需求:提取的字符串里面存在特殊的符号,这些符号在正则表达式里面有特殊的意义,
有使用的规范,不能随意使用。
逐一x.replace('+', '\+').replace('.', '\.').replace('*', '\*')...
?
那么多字符串你怎么知道有哪些特殊字符串?what to do?
别急客官,热乎乎的干货来了。。。。。。。。。。。。。。
Python 的正则表达式模块已经帮你想好了解决办法,
使用re.escape
就能自动处理所有的特殊符号了!
实战举例:
import re
words = ['+\d','***...{}','前进的码力牛掰plus','点赞你最帅','持续发文,{做最实用的博客}']
pattern_str = '|'.join(words)
safe_pattern_str = re.escape(pattern_str)
print(safe_pattern_str)
打印结果:
pattern = re.compile(safe_pattern_str)
print(pattern)
打印结果:
over ,看完这里,是不是感觉真香。。。。。。。。。。。。。。。。