function transSensitive(content) { // var Sensitive = H.getStorage("Sensitive");//敏感词数组 var Sensitive=["张三","李四"];//敏感词数组 var v = new RegExp(Sensitive.join(‘|‘), "gi");//将数组转成正则 var array = new Array(); //将特殊符号的过滤并且保存 content = content.replace(/[\ |\~|\`|\!|\@|\#|\$|\%|\^|\&|\*|\(|\)|\-|\_|\+|\=|\||\\|\[|\]|\{|\}|\;|\:|\"|\‘|\,|\<|\.|\>|\/|\?]/g, function (s, i) { array.push({ index: i, content: s }); return s.replace(/./g, ‘‘); }) //将敏感词进行筛选 var output = content.replace(v, function (sMatch) { if (sMatch.length <= 1) { return sMatch.replace(/./g, ‘*‘); } else { return sMatch[0] + sMatch.replace(/./g, ‘*‘).substring(0, sMatch.length - 1);//将词的第一个字保留 } }) var array2 = output.split(‘‘);//将字符串转成char数组 //循环array 将array[i].content 通过array[i].index 插入指定位置 现将array[i].content 应该算是拼接 for (var i = 0; i < array.length; i++) { array2.splice(array[i].index, 0, array[i].content); } return array2.join(‘‘); }
时间: 2024-10-10 13:42:53