所以我有一个与网址匹配的正则表达式。
$pat = '/((?:https?|ftp):\/\/\S+)/u';
但是,我的 img标签 也包含网址。
<img class="summernote-image" src="http://random.jp/~name/files/Pikachu.jpg">
如何使用正则表达式(或任何其他方式)匹配所有网址,而不匹配图像标签中的网址?
答案 0 :(得分:1)
因为您没有更新所用语言的风格。
所以我不能告诉您特定语言的答案。
但是一般情况下,您需要使用
negative look behind
。
这样的事情。
(?<!src="|href=")(?:https?|ftp):\/\/\S+
(?<!src="|href=")
-这背后的负面表情表示没有src="
或href="
开头的匹配事物感谢 @certainoerformance 的宝贵意见:)