练习题01:求:将字符串中的'6666' 替换成'****'

140 阅读1分钟

求:将字符串中的'6666' 替换成'****'.

方法1:

使用while()实现将字符串中的'6666' 替换成'****'。

    var str = '12345666678906666asjdvmz6666';
    
    // 循环字符串中是否有'6666'
    while (str.includes('6666')) {
    
        // 如果有6666 那么将其转化为****
        // 但是只能转化第一个符合条件的字符串
        str = str.replace('6666', '****');
    }
    console.log(str);

运行结果:

01.png

方法2:

使用forEach循环实现需求:批量替换违禁词 ['6666' , '777'].

var str = '66661234666612347771234777';
        
var arr = ['6666', '777'];

arr.forEach(function (value) {
    while (str.includes(value)) {
        str = str.replace(value , '****');
    }
})
console.log(str);

运行结果:

02.png

方法3:

使用for循环实现批量替换违禁词 ['6666' , '777'].

for( var i = 0 ; i <= str.length-1 ; i++ ){
while( str.includes(arr[i])){
        str = str.replace( arr[i] , '****' );
    }
}
console.log(str);

运行结果:

03.png

方法4:

使用正则表达式替换全部批量替换违禁词 ['6666' , '777']。

if (str.includes('6666')) {
     str = str.replace(/6666/g, '****');
}
console.log(str);

运行结果:

04.png