我想用正则表达式过滤一些单词(性别等),但是有些时候人们会使用那些单词(b a d)(b.a.d)(b / a / d)等等如何使用正则表达式来停止这些单词.
这只是我需要过滤掉所有那些我编写代码的单词,但它不能完美运行的单词
Meta name="" content="">
最佳答案
编辑:只需使用以下代码:
function isAbusive(str) {
var badWords = ['bad','worst'];
var isTrue = false;
if(str) {
for (var i = 0; i < badWords.length; i++) {
isTrue = !!(str.replace(/\W|\s/g,'').toLowerCase().indexOf(badWords[i]) + 1);
if(isTrue) break;
}
}
return isTrue;
}
var comments = document.getElementsByTagName("p");
for (var i = comments.length - 1; i >= 0; i--) {
console.log(i,comments[i].innerHTML)
if (isAbusive(comments[i].innerHTML)) {//you can check this comment
alert("there is bad word");
comments[i].parentNode.removeChild(comments[i]);
}
}