Python正则提取和匹配中文的方法是什么
Admin 2022-08-02 群英技术资讯 902 次浏览
这篇文章主要介绍“Python正则提取和匹配中文的方法是什么”的相关知识,下面会通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“Python正则提取和匹配中文的方法是什么”文章能帮助大家解决问题。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的二进制转化模块,具有一定的参考价值,感兴趣的小伙伴们可以参考一下,希望能够给你带来帮助<BR>
这篇文章主要分享的是 Python 编程语言的详细介绍,Python 由 Guido van Rossum 设计,作为“ABC”编程语言的继承者,于 1991 年首次发布。它是一种高级通用语言,其设计理念是通过使用缩进来强调代码的可读性。文章具有一定的参考价值,需要的朋友可以参考一下
这篇文章主要为大家介绍了Python全栈之队列,具有一定的参考价值,感兴趣的小伙伴们可以参考一下,希望能够给你带来帮助<BR>
1.abs()函数返回数字的绝对值。print(abs(-45))#返回45print("abs(0.2):",abs(0.2))#返回abs(0.2):0.2 2. all()函数用于判断给定的参数中的所有元素是否都为TRUE,如果是返回True,否则返回False。元素除了是0、空、None、False
这篇文章主要介绍了Python-OpenCV的基本使用和相关函数介绍,主要包括图像的读取保存图像展示问题,结合实例代码给大家介绍的非常详细,需要的朋友可以参考下
成为群英会员,开启智能安全云计算之旅
立即注册关注或联系群英网络
7x24小时售前:400-678-4567
7x24小时售后:0668-2555666
24小时QQ客服
群英微信公众号
CNNIC域名投诉举报处理平台
服务电话:010-58813000
服务邮箱:service@cnnic.cn
投诉与建议:0668-2555555
Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 ICP核准(ICP备案)粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008