[问题] python 的一则判断式和 PCRE 不同,求解

楼主: ggirls (哥)   2013-05-17 21:38:10
我的问题似乎是(...){min, max}的括号问题:
在PCRE时是ok的,在括号中的内容反复0或多次
'<img src=[^>]*?jpg"><BR>(<font color=red>.*?</font><BR>){0,}'
在python 3.3中的re
上面的式子是可以找到的,但传回值只有括号内的内容,前面的<img src....><BR>
却不见了
p=re.compile('<img src=[^>]*?jpg"><BR>(<font color=red>.*?</font><BR>){0,}')
hlist=p.findall(test_string)
作者: s25g5d4 (function(){})()   2013-05-17 21:54:00
将(pattern)改成(?:pattern) 另外{0,}可以用*代替
楼主: ggirls (哥)   2013-05-17 22:00:00
用(?:patern)就可以了。但实际上他找到的数量是一样的。原来解法找到的数目是相同的,有点好奇python的理解为何忘了说谢谢,省了我很多时间,晚安

Links booklink

Contact Us: admin [ a t ] ucptt.com