Javascript JS中的Preg_匹配
HTML代码Javascript JS中的Preg_匹配,javascript,web-scraping,preg-match,Javascript,Web Scraping,Preg Match,HTML代码 <li class="btn-xs"><a tabindex="-1" href="/admin/orders/restart/id/163148" >Restart</a></li> <li class="btn-xs" style="display:none;"><a tabindex="-1" href="" data- toggle="modal" data-t
<li class="btn-xs"><a tabindex="-1"
href="/admin/orders/restart/id/163148"
>Restart</a></li>
<li class="btn-xs" style="display:none;"><a tabindex="-1" href="" data-
toggle="modal" data-target="#check_alls_163148_s"
style="cursor:pointer;">Set start count</a></li>
<li class="btn-xs"><a tabindex="-1"
href="/admin/orders/restart/id/162616">Restart</a></li>
<li class="btn-xs" style="display:none;"><a tabindex="-1" href="" data-
toggle="modal" data-target="#check_alls_162616_s"
style="cursor:pointer;">Set start count</a></li>
如何在js中提取/admin/orders/restart/id/163148和/admin/orders/restart/id/162616?我需要把它放到一个数组中
我不擅长预赛。如何使用js提取/admin/orders/restart/id/163148和/admin/orders/restart/id/162616
Array.prototype.slice.call(document.querySelectorAll('li.btn-xs a'))
.map( a => a.getAttribute("href") )
.filter( href => href && href.length > 0 )
或者,添加绒毛:
函数SelectBy非空{
返回Array.prototype.slice.calldocument.querySelectorAll'li.btn-xs a'。映射a=>a.GetAttributeRef.filter a=>a&&a.length>0;
}
函数selectByRestart{
返回Array.prototype.slice.calldocument.querySelectorAll'li.btn-xs a'。过滤器a=>a.innerHTML==Restart.map a=>a.getAttributehref;
}
函数初始化{
document.getElementByIdrestart.addEventListenerclick,函数{console.logselectByRestart;};
document.getElementByIdhref.addEventListenerclick,函数{console.logselectByNonBlank;};
}
document.addEventListener DOMContentLoaded,init,false;
通过重新启动选择
按非空HREF选择不重复的可能重复项。。在另一个问题中只有1。。在我的示例中,我需要返回第一个和第二个。。就像在arrayDo中,您是将此html作为字符串,还是在浏览器环境中?请参阅关于使用解析html的说明Regexp@mdziekon对你来说容易吗?所以给我一个答案:没办法吗?不要评论!谢谢我只需要在@PaulE中重新启动后提取href,该要求不在问题范围内,但很容易实现handle@PaulE试试那个毛茸茸的版本吧!