正则表达式查找所有锚标记链接

时间:2018-08-08 17:56:35

标签: html regex html-parsing

只是为了从一开始就解决这个问题,我已经阅读了那个问题,并且我完全理解这是一个坏主意,还有其他更好的方法。

但是,对于我的非常简单的用例(即检索页面上的所有锚标记链接),我本以为以下正则表达式就足够了,并且比功能完善的HTML解析器要简单和快捷得多:< / p>

href="(.+)"

现在,我是否忽略了一些明显的致命缺陷,或者对于我非常简单的用例来说,这是否是一个足够好的选择?

1 个答案:

答案 0 :(得分:1)

答案:不,这要复杂一些。

为什么?因为href不仅用于锚标签,还可以用于锚标签链接。有关示例,请参见this page

可能还存在带有href属性的标记,这些标记在HTML中已被注释掉。

此外,它可以包含在JavaScript字符串中,用于动态添加到页面的元素,例如

var newElement = '<a href="www.example.com">My Page</a>

您需要考虑一些怪癖,例如LGSon和Daniel Gale的评论中提到的怪癖,但这可能足以回答您的问题-不,不是那么简单< / em>。