我正在尝试构建一个正则表达式以从内容中删除链接,除非它包含 2 个条件中的 1 个。
<a.*?href=[""'](http[s]?:\/\/(.*?)\.link\.com)?\/(?!m\/).*?<\/a>
这将匹配到在域部分末尾没有 m/ 的任何指向 link.com 的链接。我想稍微改变一下,所以它不匹配链接到 pdf 文件的 URL,不管 url 中有 m/,我想出了:
<a.*?href=["'](http[s]?:\/\/(.*?)\.brodies\.com)?\/(?!m\/).*?\.(?!pdf)["'].*?<\/a>
哦,非常接近,除了现在它只有在 URL 有一个“。”时才会匹配。最后 - 我可以看到它为什么这样做。我似乎无法使“。” 可选,因为这会导致“。”之前的非贪婪模式。继续前进,直到它击中 ["']
任何帮助都会很好地帮助解决这个问题。
谢谢保罗