python 的re正则编写问题,如果获得含有中文的目标字符串

描述:我有一个字符串a,我想获得目标字符串为[锡山区,南长区 ,惠山区,崇安区 ,北塘区 ,滨湖区 ,宜兴市 ,江阴市 ],我想使用正则的分组实现,但是却出错了?请问问题在哪里,感谢大家。
这是我的正则,我是刚学习的,出错了。
re.sub((^[dc='].>$)(.)(</span>$),r2,a)
原始字符串为:

<a title='锡山区房产' href='http://wx.cityhouse.cn/district/XS/'>锡山区</a>
<a title='南长区房产' href='http://wx.cityhouse.cn/district/NC/'>南长区</a>
<a title='惠山区房产' href='http://wx.cityhouse.cn/district/HS/'>惠山区</a>
<a title='崇安区房产' href='http://wx.cityhouse.cn/district/CA/'>崇安区</a>
<a title='北塘区房产' href='http://wx.cityhouse.cn/district/BT/'>北塘区</a>
<a title='滨湖区房产' href='http://wx.cityhouse.cn/district/BH/'>滨湖区</a>
<a title='宜兴市房产' href='http://yx.wx.cityhouse.cn'>宜兴市</a>
<a title='江阴市房产' href='http://jy.wx.cityhouse.cn'>江阴市</a>

补充说明:我是使用BeautifulSoup来获取的,网页有很多个<a节点,没有直接用get_text()是 有些<a节点的字符串不是我想要的

阅读 3k
4 个回答
for i in re.findall('<a .+>(.+)</a>', a):
    print i

用pyquery吧,和jquery语法一样,你会感觉很酸爽

新手上路,请多包涵

for a in soup.find_all('a'):

print(a.string)

小太武的可行,
在上面的基础上少改一下,

for i in re.findall(r'<a .+>(.*?)</a>',string):
    print i[0]
    #更加万能

楼主为何不学xpath,这种格式的网页会很轻松,

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题