问题小解析

问题一:如何将一个字符串完全倒过来

 function reverseStr(str){
            var len = str.length;
            var reStr = "";
            for(var i = len-1;i>=0; i--){
                reStr = reStr + str[i];
            }
            // console.log(reStr);
            return reStr;
        };

问题二 数组去重

function noRepeat(arr){
            var onlyArr = [];
            for(var i = 0;i< arr.length - 1;i++){
                if(onlyArr.indexOf(arr[i]) == -1){
                    onlyArr.push(arr[i]);
                }
            }
            // console.log(onlyArr);
            return onlyArr;
        }

问题三 随便给你一个字符串,请将字符串中的英文子字符串解析出来
方法一:

//使用正则表达式的match()方法
function enChildStr(str){
        var pattern = /[a-zA-Z]+/g;   //匹配至少一个英文(a-zA-Z)之间组成的子字符串构成一个新数组
        var mStr = str.match(pattern);
        console.log("返回的结果数组:"+ mStr);
        return mStr;
    }
    enChildStr("li jia 谭sty gdhhs是 交定金 hhdu ready很");

方法二:

//使用字符串的模式匹配方法split()
    //split()接受两个参数,第一个是分割字符串,即可接受字符串形式,也可接受正则表达式的形式
    //这个方法与上述方法的出发点其实正好相反,是将其他非要求字符作为分割字符
    function enChildStr2(str){
        var pattern = /[^a-zA-Z]+/g;   //非英文字母至少一个组成字符串作为分隔符
       var splitStr = str.split(pattern);
       //如果字符串最后一个为非英文字符,那么以非英文字符结尾的字符串作为分隔符最后一个子字符串必然是空字符
        //所以需要对左后一个子字符串进行一个判断
       if(splitStr[splitStr.length-1]==""){
           //如果最后一个字符串为空时,就将最后一个字符串移除
           splitStr.pop();
       }
       console.log("splitStr---"+splitStr);
       return splitStr;
    }
©️2020 CSDN 皮肤主题: 编程工作室 设计师:CSDN官方博客 返回首页