请封装一个过滤敏感词的函数 js
时间: 2024-05-01 11:17:48 浏览: 92
好的,以下是一个简单的过滤敏感词的 JavaScript 函数:
```
function filterSensitiveWords(str) {
const sensitiveWords = ["敏感词1", "敏感词2", "敏感词3"]; // 这里可以添加更多敏感词,可以从后端获取
let filteredStr = str;
for (let i = 0; i < sensitiveWords.length; i++) {
const re = new RegExp(sensitiveWords[i], "g"); // 使用正则表达式进行全局匹配
filteredStr = filteredStr.replace(re, "***"); // 将敏感词替换为星号
}
return filteredStr;
}
```
该函数使用一个敏感词数组,将传入的字符串中所有匹配到的敏感词替换为星号,然后返回替换后的字符串。可以根据需要自行扩展和优化。
相关问题
使用js封装一个过滤敏感词的函数
好的,以下是一个简单的 JavaScript 函数,可以用于过滤敏感词:
```
function filterWords(inputStr, sensitiveWords) {
for (let i = 0; i < sensitiveWords.length; i++) {
const regex = new RegExp(sensitiveWords[i], 'gi');
inputStr = inputStr.replace(regex, '*'.repeat(sensitiveWords[i].length));
}
return inputStr;
}
```
其中,`inputStr` 是输入的字符串,`sensitiveWords` 是一个包含所有敏感词的数组。该函数会遍历敏感词数组,将字符串中出现的敏感词替换为相同长度的星号,最后返回过滤后的字符串。这里使用了正则表达式和 `String.prototype.replace()` 方法来实现替换操作。
使用js的indexOf方法封装一个过滤敏感词的函数
好的,以下是一个使用 `indexOf()` 方法实现的 JavaScript 函数,可以用于过滤敏感词:
```
function filterWords(inputStr, sensitiveWords) {
for (let i = 0; i < sensitiveWords.length; i++) {
const word = sensitiveWords[i];
while (inputStr.indexOf(word) !== -1) {
inputStr = inputStr.replace(word, '*'.repeat(word.length));
}
}
return inputStr;
}
```
其中,`inputStr` 是输入的字符串,`sensitiveWords` 是一个包含所有敏感词的数组。该函数会遍历敏感词数组,在字符串中逐一查找敏感词,并将其替换为相同长度的星号,最后返回过滤后的字符串。这里使用了 `while` 循环和 `String.prototype.replace()` 方法来实现替换操作。
阅读全文