如何阻止这个正则表达式贪婪?

时间:2016-03-18 13:39:28

标签: regex regex-greedy

我有以下正则表达式http://regexr.com/3d1qb,这是一个贪婪的人现在我明白为什么会发生这种情况。但我该如何解决这个问题呢?

目前它将整个事物作为一个匹配。但我想要的方式是两次不匹配。

1 个答案:

答案 0 :(得分:1)

正则表达式不是解析html的正确工具。这个适用于示例,但它不适用于真正的html:

(<a href="https:\/\/www.example.com\/finance-glossary.*?">)([^<]*)(<\/a>)

例如,在您的测试中,第一个<a.*?href可以匹配任何内容,直到找到href,任何元素,属性或文本。这不是你应该用正则表达式做的事情。

http://regexr.com/3d1qh