Python匹配中文的正则表达式


Posted in Python onMay 11, 2016

正则表达式并不是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正则表达式匹配中文的方法,希望对大家有所帮助!

Python 相关文章推荐
python单链表实现代码实例
Nov 21 Python
python静态方法实例
Jan 14 Python
在Django的通用视图中处理Context的方法
Jul 21 Python
Python 3.6 性能测试框架Locust安装及使用方法(详解)
Oct 11 Python
安装python3的时候就是输入python3死活没有反应的解决方法
Jan 24 Python
python自动截取需要区域,进行图像识别的方法
May 17 Python
Python实现决策树C4.5算法的示例
May 30 Python
python 文件转成16进制数组的实例
Jul 09 Python
python按时间排序目录下的文件实现方法
Oct 17 Python
python 移动图片到另外一个文件夹的实例
Jan 10 Python
pytorch中交叉熵损失(nn.CrossEntropyLoss())的计算过程详解
Jan 02 Python
Python解析微信dat文件的方法
Nov 30 Python
Python3使用requests发闪存的方法
May 11 #Python
Python3控制路由器——使用requests重启极路由.py
May 11 #Python
Python3使用requests登录人人影视网站的方法
May 11 #Python
在Django中进行用户注册和邮箱验证的方法
May 09 #Python
Python数据类型详解(三)元祖:tuple
May 08 #Python
Python数据类型详解(二)列表
May 08 #Python
Python数据类型详解(一)字符串
May 08 #Python
You might like
php传值赋值和传地址赋值用法实例分析
2015/06/20 PHP
UPUPW 更新 64 位 Apache 系列 PHP 7.0 正式版
2015/12/08 PHP
Laravel框架文件上传功能实现方法示例
2019/04/16 PHP
firefox中用javascript实现鼠标位置的定位
2007/06/17 Javascript
基于jquery的Repeater实现代码
2010/07/17 Javascript
JavaScript中通过prototype属性共享属性和方法的技巧实例
2015/03/13 Javascript
AngularJS中监视Scope变量以及外部调用Scope方法
2016/01/23 Javascript
基于JavaScript实现瀑布流效果(循环渐近)
2016/01/27 Javascript
解决bootstrap导航栏navbar在IE8上存在缺陷的方法
2016/07/01 Javascript
jQuery获取同级元素的简单代码
2016/07/09 Javascript
基于JavaScript实现前端文件的断点续传
2016/10/17 Javascript
bootstarp modal框居中显示的实现代码
2017/02/18 Javascript
微信小程序Redux绑定实例详解
2017/06/07 Javascript
Angular模板表单校验方法详解
2017/08/11 Javascript
Vue兼容ie9的问题全面解决方案
2018/06/19 Javascript
解决vue-quill-editor上传内容由于图片是base64的导致字符太长的问题
2018/08/20 Javascript
最基础的Python的socket编程入门教程
2015/04/23 Python
详解Django缓存处理中Vary头部的使用
2015/07/24 Python
python爬虫的工作原理
2017/03/05 Python
python时间日期函数与利用pandas进行时间序列处理详解
2018/03/13 Python
使用Python实现一个栈判断括号是否平衡
2018/08/23 Python
Python WEB应用部署的实现方法
2019/01/02 Python
使用Python串口实时显示数据并绘图的例子
2019/12/26 Python
Pytorch保存模型用于测试和用于继续训练的区别详解
2020/01/10 Python
PyTorch如何搭建一个简单的网络
2020/08/24 Python
Scrapy 配置动态代理IP的实现
2020/09/28 Python
举例详解HTML5中使用JSON格式提交表单
2015/06/16 HTML / CSS
a标签下载链接的简单实现
2016/09/13 HTML / CSS
伦敦一家西班牙童装精品店:La Coqueta
2018/02/02 全球购物
Infababy英国:婴儿推车、Travel System婴儿车和婴儿汽车座椅销售
2018/05/23 全球购物
打架检讨书800字
2014/01/10 职场文书
化妆品店促销方案
2014/02/24 职场文书
敬老院院长事迹材料
2014/05/21 职场文书
python基础入门之字典和集合
2021/06/13 Python
Python编程中Python与GIL互斥锁关系作用分析
2021/09/15 Python
python字符串的一些常见实用操作
2022/04/06 Python