比方说,有两个默认的HTML电子邮件标签:正则表达式,以确保电子邮件地址
<a href="mailto:[email protected]">[email protected]</a>
<a href="mailto:[email protected]" nosecure>[email protected]</a>
我只想要查找的电子邮件标记没有的nosecure
标签在PHP。所以像\<a\b(?![^>]*\bnosecure\b)[^>]*>[^<]*<\/a>
这样的东西到目前为止将做到这一点。
但是现在我想为href
标记的值和用于<a>...</a>
标记内的文本的值组设置一个组。第二组很容易:
\<a\b(?![^>]*\bnosecure\b)[^>]*>([^<]*)<\/a>
但是,如何获得第一组?在href标记之前/之前可以有无限制的其他字符,而且nosecure可以在href标记之前/之前。
如何获取href="mailto:<group>"
的值的正则表达式组。此外,可以有'
而不是"
。
测试用例和我目前的尝试:https://regex101.com/r/RNEZO3/2
感谢所有帮助:)
问候
关于用正则表达式解析XML/HTML的困难的另一个问题......呃。 –