在一些工作中需要对中文进行正则匹配,若以字符串的形式匹配,是无法实现的。
所以必须将中文字符串转换成unicode编码,将正则表达式也转换成unicode编码,正则表达式和被匹配的文本使用同样的编码,这样匹配才能成功。
unicode中中文的编码为/u4e00-/u9fa5
例如:
import re s = 'Python中正则表达式对中文的匹配' temp = s.decode('utf-8') reg = u"([/u4e00-/u9fa5]+)" m = re.compile(reg).search(temp) if m: print m.groups()
匹配后返回结果也是unicode编码