Python正则表达式匹配中文

匹配中文的正则表达式是[\u4e00-\u9fa5]。

Python 2.7.x下,需要原字符串和正则表达式字符串都是unicode字符串,才能正确匹配到中文,这是容易忽略的地方。

Python 3.x下未试过。

import re

a = u'Python正则表达式'
m = re.search(u'[\u4e00-\u9fa5]+', a)
print m.group(0)    # “正则表达式”

m = re.search('[\u4e00-\u9fa5]+', a)
print m.group(0)    # "P"

 

posted @ 2014-04-16 15:26  Vanitas  阅读(681)  评论(0)    收藏  举报