只是为了从一开始就解决这个问题,我已经阅读了那个问题,并且我完全理解这是一个坏主意,还有其他更好的方法。
但是,对于我的非常简单的用例(即检索页面上的所有锚标记链接),我本以为以下正则表达式就足够了,并且比功能完善的HTML解析器要简单和快捷得多:< / p>
href="(.+)"
现在,我是否忽略了一些明显的致命缺陷,或者对于我非常简单的用例来说,这是否是一个足够好的选择?
答案 0 :(得分:1)
答案:不,这要复杂一些。
为什么?因为href
不仅用于锚标签,还可以用于锚标签链接。有关示例,请参见this page。
可能还存在带有href
属性的标记,这些标记在HTML中已被注释掉。
此外,它可以包含在JavaScript字符串中,用于动态添加到页面的元素,例如
var newElement = '<a href="www.example.com">My Page</a>
您需要考虑一些怪癖,例如LGSon和Daniel Gale的评论中提到的怪癖,但这可能足以回答您的问题-不,不是那么简单< / em>。