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中函数eval和ast.literal_eval的区别详解
Aug 10 Python
解决nohup重定向python输出到文件不成功的问题
May 11 Python
Python+OpenCV目标跟踪实现基本的运动检测
Jul 10 Python
python中的tcp示例详解
Dec 09 Python
详解Python:面向对象编程
Apr 10 Python
如何用Python来理一理红楼梦里的那些关系
Aug 14 Python
Django中的cookie和session
Aug 27 Python
django创建超级用户过程解析
Sep 18 Python
Python3标准库之threading进程中管理并发操作方法
Mar 30 Python
Python docutils文档编译过程方法解析
Jun 23 Python
python中turtle库的简单使用教程
Nov 11 Python
Python趣味爬虫之用Python实现智慧校园一键评教
May 28 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中改变图片的尺寸大小的代码
2011/07/17 PHP
$_GET['goods_id']+0 的使用详解
2013/06/06 PHP
Fatal error: Allowed memory size of 134217728 bytes exhausted (tried to allocate 2611816 bytes)
2014/11/08 PHP
分享微信扫码支付开发遇到问题及解决方案-附Ecshop微信支付插件
2015/08/23 PHP
php开发工具有哪五款
2015/11/09 PHP
PHP中创建和编辑Excel表格的方法
2018/09/13 PHP
PHP时间函数使用详解
2019/03/21 PHP
IE 缓存策略的BUG的解决方法
2007/07/21 Javascript
让网页根据不同IE版本显示不同的内容
2009/02/08 Javascript
Javascript和Ajax中文乱码吐血版解决方案
2009/12/21 Javascript
js函数调用常用方法详解
2012/12/03 Javascript
js实现按钮加背景图片常用方法
2014/11/01 Javascript
JavaScript中的anchor()方法使用详解
2015/06/08 Javascript
Angular 根据 service 的状态更新 directive
2016/04/03 Javascript
JS中parseInt()和map()用法分析
2016/12/16 Javascript
Bootstrap表单使用方法详解
2017/02/17 Javascript
vue实现密码显示隐藏切换功能
2018/02/23 Javascript
关于vuejs中v-if和v-show的区别及v-show不起作用问题
2018/03/26 Javascript
解决vue2 在mounted函数无法获取prop中的变量问题
2018/11/15 Javascript
微信小程序显示倒计时功能示例【测试可用】
2018/12/03 Javascript
js脚本中执行java后台代码方法解析
2019/10/11 Javascript
NumPy中的维度Axis详解
2019/11/26 Python
关于初始种子自动选取的区域生长实例(python+opencv)
2020/01/16 Python
Python JSON编解码方式原理详解
2020/01/20 Python
python批量修改交换机密码的示例
2020/09/22 Python
百丽国际旗下购物网站:优购
2017/02/28 全球购物
美国用餐电影院:Alamo Drafthouse Cinema
2020/01/23 全球购物
化验室技术员岗位职责
2013/12/24 职场文书
大学毕业生自荐书怎么写?
2014/01/06 职场文书
竞选学习委员演讲稿
2014/09/01 职场文书
2015年质检工作总结
2015/05/04 职场文书
工作经历证明范本
2015/06/15 职场文书
nginx配置ssl实现https的方法示例
2021/03/31 Servers
常用的MongoDB查询语句的示例代码
2021/07/25 MongoDB
关于python类SortedList详解
2021/09/04 Python
NGINX 权限控制文件预览和下载的实现原理
2022/01/18 Servers