Python匹配中文的正则表达式

yipeiwu_com7年前Python基础

正则表达式并不是Python的一部分。正则表达式是用于处理字符串的强大工具,拥有自己独特的语法以及一个独立的处理引擎,效率上可能不如str自带的方法,但功能十分强大。得益于这一点,在提供了正则表达式的语言里,正则表达式的语法都是一样的,区别只在于不同的编程语言实现支持的语法数量不同;但不用担心,不被支持的语法通常是不常用的部分。

Python正则表达式简介

正则表达式是一个特殊的字符序列,它能帮助你方便的检查一个字符串是否与某种模式匹配。

Python 自1.5版本起增加了re 模块,它提供 Perl 风格的正则表达式模式。

re 模块使 Python 语言拥有全部的正则表达式功能。

compile 函数根据一个模式字符串和可选的标志参数生成一个正则表达式对象。该对象拥有一系列方法用于正则表达式匹配和替换。

re 模块也提供了与这些方法功能完全一致的函数,这些函数使用一个模式字符串做为它们的第一个参数。

以上说的都是给正文做铺垫的,下面看下python正则表达式如何匹配中文的。

# -*- coding: utf-8 -*-
import re
def findPart(regex, text, name):
res=re.findall(regex, text)
if res:
print "There are %d %s parts:\n"% (len(res), name)
for r in res:
print "\t",r.encode("utf8")
print
text ="#who#helloworld#a中文x#"
usample=unicode(text,'utf8')
findPart(u"#[\w\u2E80-\u9FFF]+#", usample, "unicode chinese")

注:

几个主要非英文语系字符范围

2E80~33FFh:中日韩符号区。收容康熙字典部首、中日韩辅助部首、注音符号、日本假名、韩文音符,中日韩的符号、标点、带圈或带括符文数字、月份,以及日本的假名组合、单位、年号、月份、日期、时间等。

3400~4DFFh:中日韩认同表意文字扩充A区,总计收容6,582个中日韩汉字。

4E00~9FFFh:中日韩认同表意文字区,总计收容20,902个中日韩汉字。

A000~A4FFh:彝族文字区,收容中国南方彝族文字和字根。

AC00~D7FFh:韩文拼音组合字区,收容以韩文音符拼成的文字。

F900~FAFFh:中日韩兼容表意文字区,总计收容302个中日韩汉字。

FB00~FFFDh:文字表现形式区,收容组合拉丁文字、希伯来文、阿拉伯文、中日韩直式标点、小符号、半角符号、全角

(
#!/usr/bin/python3
# -*- coding: UTF-8 -*-
import re
message = u'天人合一'.encode('utf8')
print(re.search(u'人'.encode('utf8'), message).group())
交互模式下的例子
>>> import re
>>> s='Phone No. 010-87654321'
>>> 
>>> r=re.compile(r'(\d+)-(\d+)')
>>> m=r.search(s)
>>> m
<_sre.SRE_Match object at 0x010EE218>
)

以上所述是小编给大家介绍的Python正则表达式匹配中文的方法,希望对大家有所帮助!

相关文章

Python3.5运算符操作实例详解

Python3.5运算符操作实例详解

本文实例讲述了Python3.5运算符操作。分享给大家供大家参考,具体如下: 1、运算符的分类 2、算术运算符 示例代码: #!/usr/bin/env python #...

Python将图片批量从png格式转换至WebP格式

Python将图片批量从png格式转换至WebP格式

实现效果 将位于/img目录下的1000张.png图片,转换成.webp格式,并存放于img_webp文件夹内。 源图片目录 目标图片目录 关于批量生成1000张图片,可以参考这篇文...

python实现微信自动回复功能

本文实例为大家分享了python实现微信自动回复的具体代码,供大家参考,具体内容如下 新年到了,不想让一早上给你发送祝福的人心里一阵寒风,可以秒回复对方的话,试试下面的python程序可...

python求斐波那契数列示例分享

复制代码 代码如下:def getFibonacci(num): res=[0,1] a=0 b=1 for x in range(0,num):...

Windows上配置Emacs来开发Python及用Python扩展Emacs

Windows下配置Emacs来开发Python 去年在网上偶然的一个机会知道了Emacs的存在,在周围前辈们都在夸赞Sublime好用的时候,喜欢跟大众唱反调的我,突然觉得如果能用Em...