【Python】正则表达式——只保留中文/汉字字符(过滤非汉字字符)

【用一个例子引入】

#去除特殊字符,只保留汉子,字母、数字
import re
s = "今天下雨了123!@#%@……¥@¥,不开心"
#去除不可见字符
str=re.sub('[^\u4e00-\u9fa5]+','',s)
print(str)

【应用】

docs=[]
for f in filepaths:
    try:
        data=open(f, encoding='utf-8').read()
        docs.append(re.sub('[^\u4e00-\u9fa5]+', '', data))
    except Exception :
        print(f)

核心部分:

re.sub('[^\u4e00-\u9fa5]+', '', data)
#其中data就是要进行过滤的字符串/文本内容
#作用是只保留汉字内容,其他字符全部过滤

你可能感兴趣的:(Python学习笔记)