字符串算法
- 替换空格
剑指offer:请实现一个函数,将一个字符串中的每个空格替换成“%20”。例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy。
let str = 'hello world, my lover';
str.replace(/\s/g, '%20');
正则表达式的语法:/pattern/attributes
其中attributes可以是g:表示全局匹配,i表示区分大小写,m表示匹配多行。
\s表示匹配任何空白字符,包括空格、制表符、换页符等等。
- 最长公共前缀
Leetcode: 编写一个函数来查找字符串数组中的最长公共前缀。如果不存在公共前缀,返回空字符串 ""。
let arr = ["flower","flow","flight"];
function getCommonStr (arr) {
let tempArr = arr.sort();
let len = tempArr.length;
if (len < 2) { return ''}
let firstEle = tempArr[0] && tempArr[0].split('');
let endEle = tempArr[len-1] && tempArr[len-1].split('');
let commonStr = '';
let flag = true;
firstEle.forEach((itm, idx) => {
if(endEle[idx] && itm === endEle[idx] && flag) {
commonStr += itm;
} else{
flag = false;
}
})
return commonStr;
}
console.log('1', getCommonStr(arr));
console.log('2', getCommonStr(["dog","racecar","car"]));








网友评论