0

我正在解析网站的来源并使用此正则表达式:

/page\.php\?id\=([0-9]*)\"\>(.*)\<\/a\>\<\/span\>/.match(self.agent.page.content)

self.agent.page.content包含由 mechanize 获取的页面的来源。正则表达式基本上可以工作,但在第二场比赛中,它确实比它应该获取的更多,因为<\/a\>\<\/span\>源中有一个以上,而正则表达式使用最后一个,所以我得到一堆 html 废话。如何告诉正则表达式将第一个匹配项用作“结束标记”?

4

1 回答 1

4

.* 是贪婪的,而 .*? 是非贪婪的。尝试:

/page\.php\?id\=([0-9]*)\"\>(.*?)\<\/a\>\<\/span\>/.match(self.agent.page.content)
于 2012-04-05T17:57:01.223 回答