用于匹配url前缀的正则表达式

时间:2015-05-09 00:29:47

标签: regex url prefix

我想删除所有网址中的Google前缀。

<a href="http://news.google.com/news/url?sa=t&fd=R&ct2=en&usg=YFo&url=http://www.goo.tv/gd/2015/0509/735557.html

dfgdfgdfgdfgdf9

<a href="http://news.google.com/news/url?sa=t&fd=R&ct2=en&usg=AFQjCNFUS_UVkd9L-r7g&clid=c3878e0698331&cid=5213281008&ei=5DFNVJ4eymQLmyYFo&url=http://www.goo.tv/gd/2015/0509/735557.html

我想删除http://news.google.com/news/url?sa=t&fd=R&ct2=en&blalba....url= 此Google前缀,以便它只保留真实的网址。

我尝试了正则表达式,但它与每个前缀不匹配,它匹配所有内容 <a href="(http:\/\/news.google.com/news/url\?([\s\S]*)&url=)

1 个答案:

答案 0 :(得分:1)

使用Lazy Quantifiers

<a href="(http:\/\/news.google.com\/news\/url\?([\s\S]*?)&url=)

你的正则表达式没有用,因为它是贪婪的(*),然后把匹配带到最后一个&amp; url = found。延迟量词(*?)在找到的第一个匹配时停止,这是您案例的预期行为。