首页 > 编程 > Python > 正文

python正则过滤字母、中文、数字及特殊字符方法详解

2020-02-15 21:15:20
字体:
来源:转载
供稿:网友

去除数字,特殊字符,只保留汉字

import re s = '1123*#$ 中abc国'str = re.sub('[a-zA-Z0-9'!"#$%&/'()*+,-./:;<=>?@,。?★、…【】《》?“”‘'![//]^_`{|}~/s]+', "", s)# 去除不可见字符str = re.sub('[/001/002/003/004/005/006/007/x08/x09/x0a/x0b/x0c/x0d/x0e/x0f/x10/x11/x12/x13/x14/x15/x16/x17/x18/x19/x1a]+', '', x)print(str)# 结果为:中国

去除特殊字符,只保留汉子,字母、数字

import restring = "123我123456abcdefgABCVDFF?/ ,。,.:;:''';'''[]{}()()《》"print(string)123我123456abcdefgABCVDFF?/ ,。,.:;:''';'''[]{}()()《》sub_str = re.sub(u"([^/u4e00-/u9fa5/u0030-/u0039/u0041-/u005a/u0061-/u007a])","",string)print(sub_str)123我123456abcdefgABCVDFF

正则表达式说明

函数 说明
sub(pattern,repl,string) 把字符串中的所有匹配表达式pattern中的地方替换成repl
[^**] 表示不匹配此字符集中的任何一个字符
/u4e00-/u9fa5 汉字的unicode范围
/u0030-/u0039 数字的unicode范围
/u0041-/u005a 大写字母unicode范围
/u0061-/u007a 小写字母unicode范围
/uAC00-/uD7AF 韩文的unicode范围
/u3040-/u31FF 日文的unicode范围

更多关于python正则过滤字母、数字及特殊字符方法请查看下面相关链接

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表