Python用正则表达式匹配含有中文的字符串,匹配不到?

import res = '<li><a class="nav-first" href="/">首 页 <a/></li>'r = re.compile(u'(<li><a\s)+(class=["].*?["])+(\shref=["].*?["])+([\u2e80-\uffff])')r.findall(s)请问问题出在什么地方?结果为空

代码如下:

#coding=utf-8

import re
s = u'<li><a class="nav-first" href="/">首 é¡µ </a></li>'
r = re.compile(u'<li><a\sclass="[^"]*"\shref="[^"]">(.*?)(?=</a></li>)')
ss = r.findall(s)
for str in ss:
    print str

运行结果:

追问

谢谢你的解答,按照你的匹配方式,未得出结果。

温馨提示:答案为网友推荐,仅供参考
第1个回答  2018-01-19
import re

s = '<li><a class="nav-first" href="/">首 页 <a/></li>'
r = re.findall(u'[\u2e80-\uffff].+?', s)
print(r)

输出结果:
['首 ', '页 ']

第2个回答  2018-01-19
中文匹配正则表达式:[^\x00-\xff]