import re
from string import digits, punctuation
rule = re.compile(r’[^a-zA-Z.,;《》?!“”‘’@#¥%…&×()——+【】{};;●,。&~、|\s::’ + digits + punctuation +’\u4e00-\u9fa5]+’)#匹配只有这些内容的数据
text5= re.sub(rule,’’,text3)#^rule内容,即非以上内容替换为空
rule5 = re.compile(r"[\u4e00-\u9fa5]",re.I)#替换掉非汉字的全部成分,注意在括号内部
text5=rule5.sub(’’,text5)
首先需要系统学习正则化的每一个符号
compile 函数
compile 函数用于编译正则表达式,生成一个正则表达式( Pattern )对象,供 match() 和 search() 这两个函数使用。
语法格式为:
re.compile(pattern[, flags])
pattern : 一个字符串形式的正则表达式
flags 可选,表示匹配模式,比如忽略大小写,多行模式等,具体参数为:
内含参数flags 可选,表示匹配模式,比如忽略大小写,多行模式等,具体参数为:
re.I 忽略大小写
re.L 表示特殊字符集 \w, \W, \b, \B, \s, \S 依赖于当前环境
re.M 多行模式
re.S 即为’ . ‘并且包