# encoding: UTF-8
import re
import sys
reload(sys)
sys.setdefaultencoding('utf-8')
def extract_number(input):
match = re.search(u"[\u4e00-\u9fa5]+", input)
return match.group()
if __name__ == "__main__":
print extract_number(unicode("dss2第三季度建安大sdssd43fds",'utf8'))
#python3使用如下:
# encoding: UTF-8
import re
def extract_number(input):
match = re.search("[\u4e00-\u9fa5]+", input)
return match.group()
if __name__ == "__main__":
print (extract_number("dss2第三季度建安大sdssd43fds"))
Python re正则匹配中文,其实非常简单,把中文的unicode字符串转换成utf-8格式就可以了,然后可以在re中随意调用unicode中中文的编码为/u4e00-/u9fa5,因此正则表达式u”[\u4e00-\u9fa5]+”可以表示一个或者多个中文字符
>>>import re
>>>s='中文:123456aa哈哈哈bbcc'.decode('utf8')
>>>s
u'\u4e2d\u6587\uff1a123456aa\u54c8\u54c8\u54c8bbcc'
>>>print s
中文:123456aa哈哈哈bbcc
>>>re.match(u"[\u4e00-\u9fa5]+",s)
<_sre.SRE_Match object at 0xb77742c0>
>>>pat='中文'.decode("utf8")
>>>re.search(pat,s)
<_sre.SRE_Match object at 0x16a16df0>
>>>newpat='这里是中文内容'.decode("utf8")
>>>news=re.sub(pat,newpat,s)
>>>print news
这里是中文内容:123456aa哈哈哈bbcc
from:http://blog.aizhet.com/web/12078.html