python2 正则表达式匹配中文的问题


写了一个正则表达式要匹配字符串中的两个中文,代码如下:

# coding=utf8
import re
s = '张三一'
r = re.search('[\u4e00-\u9fa5]{2}', s)
print r
结果发现不管怎么测试,r都是None。
后来发现是编码问题。
此处需要将字符串s和正则表达式都变成unicode编码方式才行,如下:
# coding=utf8
import re
s = u'张三一'
r = re.search(u'[\u4e00-\u9fa5]{2}', s)
print r
此时结果正常。估计在python3里边不用这么转换。


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM