Python正则提取和匹配中文的方法是什么
Admin 2022-08-02 群英技术资讯 549 次浏览
Python re正则匹配中文,其实非常简单,把中文的unicode字符串转换成utf-8格式就可以了,然后可以在re中随意调用
unicode中中文的编码为/u4e00-/u9fa5,因此正则表达式u”[\u4e00-\u9fa5]+”可以表示一个或者多个中文字符
>>> import re >>> s='中文:123456aa哈哈哈bbcc'.decode('utf8') >>> s u'\u4e2d\u6587\uff1a123456aa\u54c8\u54c8\u54c8bbcc' >>> print s 中文:123456aa哈哈哈bbcc >>> re.match(u"[\u4e00-\u9fa5]+",s) <_sre.SRE_Match object at 0xb77742c0> >>> pat='中文'.decode("utf8") >>> re.search(pat,s) <_sre.SRE_Match object at 0x16a16df0> >>> newpat='这里是中文内容'.decode("utf8") >>> news=re.sub(pat,newpat,s) >>> print news
这里是中文内容:123456aa哈哈哈bbcc
正则表达式匹配中文汉字,在实际应用中十分常见。
比如:爬虫网页文本提取、验证用户输入标准等。
以下面文本字符串为例,匹配出astr这个字符串中的所有汉字。
import re astr = '''aaaaa何时when 杖尔看see南雪snow,我me与梅花plum blossom两白头'''
下面介绍两种方法(本文环境为python3)
一、使用Unicode编码来匹配中文
常见的中文Unicode编码范围:\u4e00-\u9fa5
实现匹配代码:re.findall(’[\u4e00-\u9fa5]’, astr)
import re astr = '''aaaaa何时when 杖尔看see南雪snow,我me与梅花plum blossom两白头''' res = re.findall('[\u4e00-\u9fa5]', astr) print(res)
匹配结果:
二、直接使用中文汉字实现中文匹配
没使用过可能还真不知道,中文匹配还可以这样
实现匹配代码:re.findall(’[一-龥]’, astr)
import re astr = '''aaaaa何时when 杖尔看see南雪snow,我me与梅花plum blossom两白头''' res = re.findall('[一-龥]', astr) print(res)
匹配结果:
注:其实这里“一”对应的Unicode编码就是“\u4e00”,“龥”(yù)对应的Unicode编码就是“\u9fa5”。
常见非英文字符Unicode编码范围:
u4e00-u9fa5 (中文)
u0800-u4e00 (日文)
uac00-ud7ff(韩文)
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
这篇文章主要介绍了通过Python实现的人像雪景小程序,小程序还会自动生成每一帧雪花飘落的图片,跟GIF动态雪花人像图,还不用自己录制视频看效果。感兴趣的可以跟随小编一起学习一下
这篇文章主要介绍了如何正确的理解和使用Django信号(Signals),帮助大家更好的理解和学习是Django,感兴趣的朋友可以了解下
每当小编看见朋友圈有这种九宫格的照片就觉得特别秀,一直想自己什么时候也能来秀一个,所以直接拿这个练练手,酷炸朋友圈一波,直接进入主题,需要的朋友可以参考下
1.reshape2.flatten3.ravel4.stack(1)concatenate(2)vstack(3)dstack(4)hstack(5)r,c模式5.split(1)split(2)vsplit和hsplit6.repeat(1)标量参数(2)列表参数7.tile(1)标量参数(2)元组参数8.sor
无论是Linux系统还是Windows系统都有基于文件名实现过滤、查找的功能。但是如果想要查找一些关于某些文件指定内容的文件,好像它们明面上没有这样的功能了。这个时候就可以通过 Python 来实现这样的功能,快跟随小编一起学习一下吧
成为群英会员,开启智能安全云计算之旅
立即注册Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008