for i in re.finditer('something(.+?)"', html):
我现在想一个Python代码,找出它有多少次去循环才去那loop..in其他单词i的长度。 任何人都可以给我一个替代但类似的代码与我得到循环的长度。
for i in re.finditer('something(.+?)"', html):
我现在想一个Python代码,找出它有多少次去循环才去那loop..in其他单词i的长度。 任何人都可以给我一个替代但类似的代码与我得到循环的长度。
x = list(re.finditer('something(.+?)"', html))
if len(x)
....
for i in x:
....
findall
不是一个适当的替代,因为它返回一个字符串,不匹配的对象。
你不能做到这一点与re.finditer
,因为它返回一个迭代时,它的完成,直到它(因为它发现在每次迭代的下一场比赛)......不知道,你得使用re.findall
。
matches = re.findall('something(.+?)"', html)
num_loops = len(matches)
或者使用@ thg435的方法,如果您确实需要匹配对象。
如何实现re.findall以及获取索引号? – 2013-04-23 08:59:11
@Abul Hasnat你只需在列表中使用'len(..)'。如果你想要每个匹配的索引号,那么在枚举(re.findall(...))中输入'for i,m' – jamylak 2013-04-23 09:01:39
finditer
返回结果,因为它发现它们。 finditer
没有办法告诉你你会提前循环多少次。
您需要使用别的东西。无论是re.findall
或可能re.search
拿到长度
你能详细说明为什么你需要事先知道长度吗? – georg 2013-04-23 09:03:00
我想用百分比显示活动的进度。 – 2013-04-23 10:31:33