小编写这篇文章的一个主要目的,主要是给大家去做一个解答,解答的内容主要还是python相关事宜,比如,可以用python正则表达式去匹配和提取中文汉字,那么,具体的内容做法是什么呢?下面就给大家详细解答下。
python用正则表达式提取中文
Python re正则匹配中文,其实非常简单,把中文的unicode字符串转换成utf-8格式就可以了,然后可以在re中随意调用
unicode中中文的编码为/u4e00-/u9fa5,因此正则表达式u”[u4e00-u9fa5]+”可以表示一个或者多个中文字符
>>>import re >>>s='中文:123456aa哈哈哈bbcc'.decode('utf8') >>>s u'u4e2du6587uff1a123456aau54c8u54c8u54c8bbcc' >>>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
python正则如何匹配中文汉字
正则表达式匹配中文汉字,在实际应用中十分常见。
比如:爬虫网页文本提取、验证用户输入标准等。
以下面文本字符串为例,匹配出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(韩文)
综上所述,这篇文章就给大家介绍到这里了,希望可以给大家带来一定帮助。
文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。
转载请注明本文地址:https://www.ucloud.cn/yun/128316.html
预编译 import re re1 = re.compile(r元字符 组成的正则规则) # 元字符下面会说 re1.方法() # 方法下边也会说 元字符: 表示普通字符: . # 除了 外 都可以匹配的到 d # 只匹配 纯数字 0-9 D # 和 d相反, 除了数字全都匹配 ...
摘要:和均为非负整数,其中。如果之前至少个获取的子表达式,则为后向引用。 注:本文转自 摘取天上星的博客 PHP常用正则表达式 ^d+$ //非负整数(正整数+ 0) ^[0-9]*[1-9][0-9]*$ //正整数 ^((-d+)|(0+))$ //非正整数(负整数+ 0) ^-[0-9]*[1-9][0-9]*$ //负整数 ^-?d+$ //整数 ^d+(.d+)?$ ...
摘要:参考代码地址四制作字体模板把自己最常接触的汉字找出来之后,需要制作一套字体模板,这套字体模板的用处是让手写汉字后,顺利的找到对应的汉字,这里需要依靠第三方网站提供的一些功能。 一、背景 笔者以前在网上看到有民间高手制作字体的相关事迹,觉得把自己的手写字用键盘敲出来是一件很有意思的事情,所以一直有时间想制作一套自己的手写体,前几天在网上搜索了一下制作字体的方法,发现技术上并不是太难,结合...
摘要:能匹配中的,但不能匹配中的数量界定符符号定义是一个非负整数。则等价于和均为非负整数,其中。该方法接受一个正则表达式作为它的第一个参数。是一个非强制异常类,它表示一个正则表达式模式中的语法错误。 正则表达式及多语言操作指南 1. 正则表达式 正则表达式是对字符串操作的一种逻辑公式,就是用事先定义好的一些特定字符、及这些特定字符的组合,组成一个规则字符串,这个规则字符串用来表达对字符串的一...
摘要:能匹配中的,但不能匹配中的数量界定符符号定义是一个非负整数。则等价于和均为非负整数,其中。该方法接受一个正则表达式作为它的第一个参数。是一个非强制异常类,它表示一个正则表达式模式中的语法错误。 正则表达式及多语言操作指南 1. 正则表达式 正则表达式是对字符串操作的一种逻辑公式,就是用事先定义好的一些特定字符、及这些特定字符的组合,组成一个规则字符串,这个规则字符串用来表达对字符串的一...
阅读 889·2023-01-14 11:38
阅读 833·2023-01-14 11:04
阅读 684·2023-01-14 10:48
阅读 1887·2023-01-14 10:34
阅读 892·2023-01-14 10:24
阅读 750·2023-01-14 10:18
阅读 479·2023-01-14 10:09
阅读 519·2023-01-14 10:02