我有这个js代码:
result = subject.match(/<a.*class="gallery_browser_thumbnail".*href="(.+)">/i);
我想获取 html 源上多个 a 标签的 href 但只显示 1 个结果
如果我在模式末尾使用/g ,它会返回整个模式,但我只想要 href 部分 我的意思是 -> (.+) 这部分
这就是我捕获 html 输入的方式:
var subject = String(document
.getElementsByTagName("body")[0].innerHTML);
有什么帮助吗?
最终工作脚本:
var subject = String(document.getElementsByTagName("body")[0].innerHTML);
var regex = /<a.*class="gallery_browser_thumbnail".*href="(.+)">/gi;
var matched = null;
while (matched = regex.exec(subject)) {
alert(matched[1]);
}
最佳答案
通过添加惰性量词 ?
更改为惰性匹配:
result = subject.match(/<a.*?class="gallery_browser_thumbnail".*?href="(.+?)">/i);
关于javascript - javascript regex .match 只找到一个结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9867455/