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黑魔法Descriptor描述符的实例解析
Jun 02 Python
python爬取淘宝商品销量信息
Nov 16 Python
详解Django中CBV(Class Base Views)模型源码分析
Feb 25 Python
windows系统中Python多版本与jupyter notebook使用虚拟环境的过程
May 15 Python
Pandas时间序列重采样(resample)方法中closed、label的作用详解
Dec 10 Python
kafka-python 获取topic lag值方式
Dec 23 Python
小 200 行 Python 代码制作一个换脸程序
May 12 Python
opencv之颜色过滤只留下图片中的红色区域操作
Jun 05 Python
利用Python实现Excel的文件间的数据匹配功能
Jun 16 Python
Python实现一个优先级队列的方法
Jul 31 Python
Python通过Schema实现数据验证方式
Nov 12 Python
使用python实现学生信息管理系统
Feb 25 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和mysql中uft-8中文编码乱码的几种解决办法
2012/04/19 PHP
jQuery 源码分析笔记(6) jQuery.data
2011/06/08 Javascript
判断JS对象是否拥有某种属性的两种方式
2013/12/02 Javascript
jquery的attr方法禁用表单元素禁用输入内容
2014/06/23 Javascript
jQuery中的read和JavaScript中的onload函数的区别
2014/08/27 Javascript
jquery使整个div区域可以点击的方法
2015/06/24 Javascript
微信小程序 教程之注册页面
2016/10/17 Javascript
js学习之----深入理解闭包
2016/11/21 Javascript
Bootstrap实现圆角、圆形头像和响应式图片
2016/12/14 Javascript
angularjs定时任务的设置与清除示例
2017/06/02 Javascript
详解微信图片防盗链“此图片来自微信公众平台 未经允许不得引用”的解决方案
2019/04/04 Javascript
Vue起步(无cli)的啊教程详解
2019/04/11 Javascript
VUE 实现动态给对象增加属性,并触发视图更新操作示例
2019/11/29 Javascript
webpack proxy 使用(代理的使用)
2020/01/10 Javascript
vue+elementUI中表格高亮或字体颜色改变操作
2020/11/02 Javascript
vue实现图片裁剪后上传
2020/12/16 Vue.js
学习python (1)
2006/10/31 Python
使用Python判断IP地址合法性的方法实例
2014/03/13 Python
python操作xml文件详细介绍
2014/06/09 Python
在Python中使用HTMLParser解析HTML的教程
2015/04/29 Python
Python将图片批量从png格式转换至WebP格式
2020/08/22 Python
使用python实现接口的方法
2017/07/07 Python
opencv与numpy的图像基本操作
2019/03/08 Python
使用python实现mqtt的发布和订阅
2019/05/05 Python
使用python接受tgam的脑波数据实例
2020/04/09 Python
Python 实现将某一列设置为str类型
2020/07/14 Python
CSS实现鼠标滑过鼠标点击代码写法
2016/12/26 HTML / CSS
为你的html5网页添加音效示例
2014/04/03 HTML / CSS
详解Canvas 跨域脱坑实践
2018/11/07 HTML / CSS
美国领先的在线邮轮旅游公司:CruiseDirect
2018/06/07 全球购物
银行门卫岗位职责
2013/12/29 职场文书
旅游管理专业生自荐信范文
2014/01/02 职场文书
俄罗斯商务邀请函
2014/01/26 职场文书
厨师长岗位职责范本
2014/08/25 职场文书
开展党的群众路线教育实践活动剖析材料
2014/10/13 职场文书
2015年酒店销售部工作总结
2015/07/24 职场文书