美文网首页
js实现字符串算法

js实现字符串算法

作者: 奋斗的小小小兔子 | 来源:发表于2018-09-11 16:30 被阅读8次

字符串算法

  1. 替换空格

剑指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表示匹配任何空白字符,包括空格、制表符、换页符等等。

  1. 最长公共前缀

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"]));

相关文章

网友评论

      本文标题:js实现字符串算法

      本文链接:https://www.haomeiwen.com/subject/igvugftx.html