Python实现敏感词过滤
时间: 2024-04-06 21:27:42 浏览: 181
Python可以通过多种方式实现敏感词过滤,以下是其中一种常见的实现方式:
1. 使用正则表达式:可以使用re模块中的正则表达式函数来匹配敏感词并进行替换或删除。首先,将敏感词存储在一个列表或者文件中,然后使用re.sub()函数将匹配到的敏感词替换为指定的字符或者删除。
示例代码如下:
```python
import re
def filter_sensitive_words(text, sensitive_words):
for word in sensitive_words:
pattern = re.compile(r'\b' + word + r'\b', re.IGNORECASE)
text = re.sub(pattern, '*' * len(word), text)
return text
sensitive_words = ['敏感词1', '敏感词2', '敏感词3']
text = '这是一段包含敏感词1和敏感词2的文本。'
filtered_text = filter_sensitive_words(text, sensitive_words)
print(filtered_text)
```
输出结果为:`这是一段包含***和***的文本。`
相关问题
用python实现敏感词过滤
可以使用 Python 中的字符串操作函数和正则表达式来实现敏感词过滤。
方法一:使用字符串操作函数
示例代码如下:
```python
text = "今天我很开心,因为我买了一个新手机,这个手机真的很棒!"
sensitive_words = ["手机", "开心"]
for word in sensitive_words:
if word in text:
text = text.replace(word, "*" * len(word))
print(text)
```
输出结果为:
```
今天我很****,因为我买了一个新****,这个****真的很棒!
```
方法二:使用正则表达式
示例代码如下:
```python
import re
text = "今天我很开心,因为我买了一个新手机,这个手机真的很棒!"
sensitive_words = ["手机", "开心"]
for word in sensitive_words:
pattern = re.compile(word)
text = pattern.sub("*" * len(word), text)
print(text)
```
输出结果为:
```
今天我很****,因为我买了一个新****,这个****真的很棒!
```
以上两种方法都可以实现敏感词过滤,具体选择哪种方法可以根据实际情况进行选择。
Python编写敏感词过滤系统
以下是一个简单的Python敏感词过滤系统:
```python
sensitive_words = ["敏感词1", "敏感词2", "敏感词3"] # 敏感词列表
def filter(text):
for word in sensitive_words:
if word in text:
text = text.replace(word, "*" * len(word)) # 将敏感词替换为"*"
return text
# 测试
text = "这是一段包含敏感词1和敏感词2的文本"
filtered_text = filter(text)
print(filtered_text)
```
输出:
```
这是一段包含********和********的文本
```
该过滤系统的实现思路是遍历敏感词列表,检查文本中是否包含敏感词,如果包含则将其替换为相同长度的"*"。该过滤系统可以用于过滤用户输入、评论等文本,保护用户隐私和维护网络安全。
阅读全文