`
三月沙
  • 浏览: 619483 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

python 正则表达式匹配中文

阅读更多

网上的一篇文章,做了整理,作者已无从考证,谢谢了

 

 

s="""
en: Regular expression is a powerful tool for manipulating text. 
zh: 中文 
jp: 正規表現は非常に役に立つツールテキストを操作することです。 
jp-char: あアいイうウえエおオ 
kr:정규 표현식은 매우 유용한 도구 텍스트를 조작하는 것입니다. 
puc: 。?!、,;:“ ”‘ '——……·-·《》〈〉!¥%&*# 
"""
print "原始utf8字符"
#utf8
print "--------"
print repr(s)
print "--------\n"

#非ansi
re_words=re.compile(r"[\x80-\xff]+")
m =  re_words.search(s,0)
print "非ansi字符"
print "--------"
print m
print m.group()
print "--------\n"

#unicode
s = unicode(s)
print "原始unicode字符"
print "--------"
print repr(s)
print "--------\n"

#unicode chinese
re_words = re.compile(u"[\u4e00-\u9fa5]+")
m =  re_words.search(s,0)
print "unicode 中文"
print "--------"
print m
print m.group()
print "--------\n"


#unicode korean
re_words=re.compile(u"[\uac00-\ud7ff]+")
m =  re_words.search(s,0)
print "unicode 韩文"
print "--------"
print m
print m.group()
print "--------\n"


#unicode japanese katakana
re_words=re.compile(u"[\u30a0-\u30ff]+")
m =  re_words.search(s,0)
print "unicode 日文 片假名"
print "--------"
print m
print m.group()
print "--------\n"


#unicode japanese hiragana
re_words=re.compile(u"[\u3040-\u309f]+")
m =  re_words.search(s,0)
print "unicode 日文 平假名"
print "--------"
print m
print m.group()
print "--------\n"


#unicode cjk Punctuation
re_words=re.compile(u"[\u3000-\u303f\ufb00-\ufffd]+")
m =  re_words.search(s,0)
print "unicode 标点符号"
print "--------"
print m
print m.group()
print "--------\n"


-------------------------------------------------------
原始utf8字符
--------
"\nen: Regular expression is a powerful tool for manipulating text. \nzh: \xe4\xb8\xad\xe6\x96\x87 \njp: \xe6\xad\xa3\xe8\xa6\x8f\xe8\xa1\xa8\xe7\x8f\xbe\xe3\x81\xaf\xe9\x9d\x9e\xe5\xb8\xb8\xe3\x81\xab\xe5\xbd\xb9\xe3\x81\xab\xe7\xab\x8b\xe3\x81\xa4\xe3\x83\x84\xe3\x83\xbc\xe3\x83\xab\xe3\x83\x86\xe3\x82\xad\xe3\x82\xb9\xe3\x83\x88\xe3\x82\x92\xe6\x93\x8d\xe4\xbd\x9c\xe3\x81\x99\xe3\x82\x8b\xe3\x81\x93\xe3\x81\xa8\xe3\x81\xa7\xe3\x81\x99\xe3\x80\x82 \njp-char: \xe3\x81\x82\xe3\x82\xa2\xe3\x81\x84\xe3\x82\xa4\xe3\x81\x86\xe3\x82\xa6\xe3\x81\x88\xe3\x82\xa8\xe3\x81\x8a\xe3\x82\xaa \nkr:\xec\xa0\x95\xea\xb7\x9c \xed\x91\x9c\xed\x98\x84\xec\x8b\x9d\xec\x9d\x80 \xeb\xa7\xa4\xec\x9a\xb0 \xec\x9c\xa0\xec\x9a\xa9\xed\x95\x9c \xeb\x8f\x84\xea\xb5\xac \xed\x85\x8d\xec\x8a\xa4\xed\x8a\xb8\xeb\xa5\xbc \xec\xa1\xb0\xec\x9e\x91\xed\x95\x98\xeb\x8a\x94 \xea\xb2\x83\xec\x9e\x85\xeb\x8b\x88\xeb\x8b\xa4. \npuc: \xe3\x80\x82\xef\xbc\x9f\xef\xbc\x81\xe3\x80\x81\xef\xbc\x8c\xef\xbc\x9b\xef\xbc\x9a\xe2\x80\x9c \xe2\x80\x9d\xe2\x80\x98 '\xe2\x80\x94\xe2\x80\x94\xe2\x80\xa6\xe2\x80\xa6\xc2\xb7\xef\xbc\x8d\xc2\xb7\xe3\x80\x8a\xe3\x80\x8b\xe3\x80\x88\xe3\x80\x89\xef\xbc\x81\xef\xbf\xa5\xef\xbc\x85\xef\xbc\x86\xef\xbc\x8a\xef\xbc\x83 \n"
--------

非ansi字符
--------
<_sre.SRE_Match object at 0x01A6C330>
中文
--------

原始unicode字符
--------
u"\nen: Regular expression is a powerful tool for manipulating text. \nzh: \u4e2d\u6587 \njp: \u6b63\u898f\u8868\u73fe\u306f\u975e\u5e38\u306b\u5f79\u306b\u7acb\u3064\u30c4\u30fc\u30eb\u30c6\u30ad\u30b9\u30c8\u3092\u64cd\u4f5c\u3059\u308b\u3053\u3068\u3067\u3059\u3002 \njp-char: \u3042\u30a2\u3044\u30a4\u3046\u30a6\u3048\u30a8\u304a\u30aa \nkr:\uc815\uaddc \ud45c\ud604\uc2dd\uc740 \ub9e4\uc6b0 \uc720\uc6a9\ud55c \ub3c4\uad6c \ud14d\uc2a4\ud2b8\ub97c \uc870\uc791\ud558\ub294 \uac83\uc785\ub2c8\ub2e4. \npuc: \u3002\uff1f\uff01\u3001\uff0c\uff1b\uff1a\u201c \u201d\u2018 '\u2014\u2014\u2026\u2026\xb7\uff0d\xb7\u300a\u300b\u3008\u3009\uff01\uffe5\uff05\uff06\uff0a\uff03 \n"
--------

unicode 中文
--------
<_sre.SRE_Match object at 0x014F68A8>
中文
--------

unicode 韩文
--------
<_sre.SRE_Match object at 0x01A6C330>
정규
--------

unicode 日文 片假名
--------
<_sre.SRE_Match object at 0x014F68A8>
ツールテキスト
--------

unicode 日文 平假名
--------
<_sre.SRE_Match object at 0x01A6C330>
は
--------

unicode 标点符号
--------
<_sre.SRE_Match object at 0x014F68A8>
。
--------
分享到:
评论

相关推荐

    Python正则表达式基础

    Python正则表达式是Python编程语言中的一个强大工具,用于处理和分析文本字符串。它允许开发者通过模式匹配来查找、替换或提取数据,广泛应用于数据清洗、文本挖掘、日志分析等领域。在Python中,正则表达式主要通过...

    python正则表达式匹配不包含某几个字符的字符串方法

    最后,我们来总结一下使用Python正则表达式匹配不包含某几个字符的字符串需要注意的几个关键点: 1. 理解正则表达式的基本组成,包括元字符、量词、分组等; 2. 熟悉如何通过使用否定字符集`[^...]`来排除不想匹配的...

    第11.25节 Python正则表达式编译re.compile及正则对象使用.rar

    总结,`re.compile()`是Python正则表达式的重要工具,它使得我们可以预先编译正则表达式模式,提高程序的效率和可读性。通过创建正则表达式对象,我们可以灵活地执行多种正则操作,如查找、替换和分割字符串,从而在...

    Python正则表达式标准库使用教程.pdf

    本文介绍了Python对于正则表达式的支持,包括正则表达式基础以及Python正则表达式标准库的完整介绍及使用示例。本文的内容不包括如何编写高效的正则表达式、如何优化正则表达式,这些主题请查看其他教程。   ...

    [小小明]Python正则表达式全套笔记v0.3(1.8万字干货)

    Python正则表达式全套笔记v0.3 本文档是小小明个人笔记,涵盖了正则表达式的各个方面,包括各种模式、分组、断言、匹配、查找、替换和切割等。文档中提供了详细的正则匹配规则表,涵盖了基本字符规则、预定义字符集...

    Python-Pyregex是一个开源在线的Python正则表达式编辑器测试器

    总之,Pyregex是一个非常实用的Python正则表达式工具,它让正则表达式的测试和调试变得直观和简单,是Python开发过程中不可或缺的辅助工具。对于学习和掌握正则表达式,以及提升Python文本处理能力,Pyregex都是一个...

    Python正则表达式指南.pdf

    正则表达式匹配的过程是逐一比较表达式中的字符和文本中的字符,如果每个字符都匹配,则匹配成功;否则,匹配失败。若表达式中包含量词或边界,则匹配过程可能略有不同。量词分为贪婪和非贪婪两种模式,在贪婪模式下...

    python正则表达式使用指南

    【Python正则表达式使用指南】是一篇专为Python初学者设计的教程,旨在帮助读者理解和运用Python中的正则表达式。这篇文档采用中英文对照的方式,内容清晰易懂,适合快速学习和实践。 正则表达式是用于匹配字符串的...

    Python正则表达式操作指南.pdf

    #### 二、Python正则表达式的简单模式与字符匹配 - **简单模式**: - 最简单的正则表达式往往直接由普通的字符组成,如`test`会精确匹配字符串`"test"`。 - **大小写敏感性**:默认情况下,正则表达式区分大小写。...

    清华大学精品Python学习PPT课件-第5章 Python正则表达式.pptx

    总的来说,掌握Python中的字符串处理和正则表达式是任何Python开发者必备的技能,无论是在数据处理、文本分析还是网络爬虫等领域都有广泛应用。通过清华大学的精品课程,学习者可以系统地学习并掌握这些重要的编程...

    python正则表达式.zip

    正则表达式是对字符串操作的一种逻辑公式,就是用事先定义好的一些特定字符、及这 些特定字符的组合,组成一个“规则字符串”,这个“规则字符串”用来表达对字符串的一 种过滤逻辑(可以用来做检索,截取或者替换...

    Python正则表达式七种兵器

    Python正则表达式是Python编程语言中的一个强大工具,它用于处理字符串,通过模式匹配来查找、替换或提取文本信息。在Python中,正则表达式主要由`re`模块提供支持。本教程将深入探讨Python正则表达式的七种核心功能...

    Python正则表达式完全讲解

    在Python正则表达式中,有一些特殊的符号具有特定的意义,而其他大多数字符则仅匹配它们自身。例如: - `.`:匹配任何单个字符(除了换行符)。 - `^`:在字符串的开头处进行匹配。 - `$`:在字符串的结尾处进行...

    python 正则表达式大全

    ### Python正则表达式大全 #### 一、概述 Python 的正则表达式库 `re` 提供了一系列功能强大的工具来处理字符串模式匹配任务。正则表达式是一种强大的文本处理工具,可以用来查找、替换符合特定模式的文本。在...

    Python正则表达式指南.docx

    在 Python 中,正则表达式的匹配过程是依次拿出表达式和文本中的字符比较,如果每一个字符都能匹配,则匹配成功;一旦有匹配不成功的字符则匹配失败。 1.1. 数量词的贪婪模式与非贪婪模式 正则表达式中的数量词...

    Python正则表达式视频

    Python正则表达式是Python编程语言中的一个强大工具,它用于处理字符串,特别是搜索、匹配、替换等操作。在爬虫开发中,正则表达式是必不可少的一部分,因为我们需要使用它来提取网页上的数据。本视频教程将深入浅出...

Global site tag (gtag.js) - Google Analytics