在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]
>>
我是个好人。