JS封装过滤敏感词函数
时间: 2023-10-18 11:10:34 浏览: 126
好的,我可以帮你讲一下如何封装过滤敏感词的函数。首先,我们需要一个敏感词库,可以将敏感词存储在一个数组中。
然后,我们可以封装一个函数,接收两个参数:待过滤的文本和敏感词库。函数内部可以使用正则表达式将敏感词替换为*号或者其他符号。
这是一个简单的示例代码:
```javascript
function filterSensitiveWords(text, sensitiveWords) {
for (let word of sensitiveWords) {
const reg = new RegExp(word, 'gi');
text = text.replace(reg, '*'.repeat(word.length));
}
return text;
}
const sensitiveWords = ['敏感词1', '敏感词2', '敏感词3'];
const text = '这是一段包含敏感词的文本,敏感词1和敏感词2都被过滤了。';
const filteredText = filterSensitiveWords(text, sensitiveWords);
console.log(filteredText);
```
输出结果为:
```
这是一段包含***的文本,***和***都被过滤了。
```
当然,这只是一个非常简单的示例,实际上过滤敏感词还涉及到很多细节问题,比如敏感词的替换方式、大小写敏感等等,需要根据具体需求进行调整。
相关问题
使用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
好的,以下是一个简单的过滤敏感词的 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;
}
```
该函数使用一个敏感词数组,将传入的字符串中所有匹配到的敏感词替换为星号,然后返回替换后的字符串。可以根据需要自行扩展和优化。
阅读全文