在python2.x中,匹配中文,首先要声明utf8的编码方式。
# coding:utf-8
其次,被匹配的字符串一定要是utf8编码:
string = u'我是个好人。'
最后,正则表达式一定要是utf8编码:
pat = u'\u6211.*?\u3002'
注意,正则表达式要是u开头的utf8编码,而不是r开头的原始字符串。
完整示例:
# coding:utf-8 import re string = u'我是个好人。' pattern = u'\u6211.*?\u3002' pat = re.compile(pattern) print pat.findall(s)[0] >> 我是个好人。