您无法使用正则表达式可靠地解析HTML,因此请勿这样做。但是,您可以使用主机的内置解析器,然后获取A元素并为具有它的人返回href属性的值。
并非所有A元素都是链接,有些是锚点,因此没有href属性。在这种情况下,getAttribute将返回null,其中(falsey)过滤器不会添加到返回的数组。
var s = 'Some text will come here Check Status. Some text will come here Click Some text will come here.'
function getHREFs(markup) {
var el = document.createElement('div');
el.innerHTML = markup;
return Array.prototype.filter.call(el.querySelectorAll('a'), function(a) {
return a.getAttribute('href');
})
}
document.write(getHREFs(s));