我真的被卡住了。 我正在使用LWP。 我希望将HTML文档中的特定链接推送到数组中。 但是:
while ($edocument =~ m/href\s*=\s*"([^"\s]+)"/gi) {
#dostuff
}
将处理所有链接。 我只想要那些带有' test'在网址中。
我尝试过各种各样的组合。 (列出太多的尝试)
while ($edocument =~ m/href\s*=\s*"([^"\s*test*]+)"/gi) {
我一直在阅读和阅读,我真的需要一个线索来解决这个令人尴尬的局面。
有人可以帮忙吗?
此外,我每个$edocument
只需要一个匹配单词test。有点像last
我想在一个循环中。
还试过
的变种 @links = $edocument =~ m/<a[^>]+href\s*=\s*["']?([^"'> ]+)/ig;
然后通过一个独特的sub运行@links。但是,只需要与“测试”这个词联系起来。
答案 0 :(得分:1)
以下正则表达式如何:
while ($edocument =~ m/href\s*=\s*"([^"\s]+test[^"\s]+)"/gi) { #dostuff }
此regexp仅匹配带有子字符串test的url。