Python 正则表达式实现敏感词过滤

2023-04-02 00:00:00 过滤 正则表达式 敏感

以下是Python正则表达式实现敏感词过滤的详细说明和示例代码:

首先,我们需要导入re模块,它是Python中用于处理正则表达式的标准库。

import re

接下来,我们可以定义一个包含敏感词的列表或者从文件中读取敏感词,例如:

sensitive_words = ['pidancode', '皮蛋编程']

然后,我们可以使用re模块中的sub()函数,它可以替换匹配正则表达式的部分字符串。我们需要构造一个正则表达式,用于匹配敏感词,并将其替换为""或其他的符号。在本例中,我们将敏感词替换为""。

正则表达式中,我们可以使用竖线(|)来表示“或”,将多个敏感词合并为一个正则表达式。在本例中,正则表达式为:

pattern = '|'.join(sensitive_words)

这个正则表达式将匹配包含"pidancode"或"皮蛋编程"的字符串。

最后,我们使用sub()函数来替换敏感词,示例代码如下:

# 定义敏感词列表
sensitive_words = ['pidancode', '皮蛋编程']

# 构造正则表达式
pattern = '|'.join(sensitive_words)

# 定义替换符号
replace_symbol = '*'

# 要检查的字符串
text = 'pidancode.com是一个不错的网站,可以学到很多编程知识。'

# 使用sub()函数替换敏感词
filtered_text = re.sub(pattern, replace_symbol, text)

# 输出结果
print(filtered_text)

输出结果为:

markdown

*.*.com是一个不错的网站,可以学到很多编程知识。

可以看到,敏感词"pidancode"被替换为了"*"。

相关文章