首页 新闻 搜索 专区 学院

正则表达式如何匹配带重复部分的字符串

0
悬赏园豆:10 [已关闭问题] 关闭于 2017-05-12 11:06
复制代码
1 import re
2 txt='there are  a big apple and a big pear and three big peachs'
3 reg=r'big (apple|pear|peachs)'
4 a= re.compile(reg)
5 lisg=re.findall(a,txt)
6 print lisg
复制代码

理想是匹配出 [u'big apple',u'big pear' ,u'big peachs']

而实际匹配出[('big ', 'apple'), ('big ', 'pear'), ('big ', 'peachs')]

 

正则表达式错在哪里

 

 

实际是在爬虫时候遇到这个问题

<img src="http://www.comicyu.com/Skin/Default/Item/newartick/imager/comicweixin.png" title="\u6f2b\u57df\u7f51\u5b98\u65b9\u5fae\u4fe1" alt="\u6f2b\u57df\u7f51\u5b98\u65b9\u5fae\u4fe1" /><img src="http://www.comicyu.com/Skin/Default/Item/newartick/imager/weixin.jpg">

比如这句话 ,我要怎么才能把上面红色部分取出来

re=r'src=".+?"(\.jpg|\.png)'

我这样试了不行

tuge的主页 tuge | 初学一级 | 园豆:168
提问于:2017-05-12 09:44
< >
分享
所有回答(1)
0

自己试出来了,这就就可以了

reg=r'src="(.+png|.+jpg)"'

tuge | 园豆:168 (初学一级) | 2017-05-12 11:05
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册