1. 程式人生 > >Python 正則表示式匹配中文

Python 正則表示式匹配中文

在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]

>>
我是個好人。