使用正则表达式,点击按钮验证,如果输入框中有敏感词,将会将它中的敏感词变成 * ,借此实现敏感词过滤
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<input type="text" id="ipt">
<button id="btn">验证</button>
<p id="ip"></p>
<script>
var ipt = document.getElementById('ipt');
var btn = document.getElementById('btn');
var ip = document.getElementById('ip');
btn.onclick = function() {
var value = ipt.value;
var arr = ['文明', '傻瓜', '滚']; //敏感词数组
//遍历
for (var i = 0; i < arr.length; i++) {
var reg = new RegExp(arr[i], 'g');
value = value.replace(reg, function(a){
var str = '';
for(var j = 0; j < a.length; j++){
str += '*';
}
return str;
});
ip.innerHTML = value; // 将ipt的内容赋值给ip
}
}
</script>
</body>
</html>
也有更为方便的方法,
var ipt = document.querySelector('input');
var btn = document.querySelector('button');
var p = document.querySelector('p');
btn.onclick = function () {
var value = ipt.value;
p.innerHTML = value.replace(/文明|傻瓜|滚/g, function (s) {
console.log(s);
return s.replace(/./g, "*");
});
}