[英]regex exclude img where src=“//”
有人可以幫我嗎,我不喜歡正則表達式。 我有此正則表達式在相對URL上運行preg_replace,將域放在開頭,並使它們成為絕對的。 它適用於標准URL,但我遇到的URL如下所示:
<img src="//domain.com/file.jpg">
。
..匹配正則表達式,然后變得像:
<img src="http://www.newdomain.com//domain.com/file.jpg">
,這顯然會中斷。
如何修改此正則表達式以不接受以兩個斜杠“ //”開頭的字符串?
preg_replace("#(<\s*img\s+[^>]*src\s*=\s*[\"'])(?!http)([^\"'>]+)([\"'>]+)#", '$1' .$url. '/$2$3', $html);
您已經排除了帶有“ http”的網址,可以在其中添加“ //”-
(<\s*img\s+[^>]*src\s*=\s*[\"'])(?!(http)|(\/\/))([^\"'>]+)([\"'>]+)
^^^^^^^^^^^^^ Modified here
你可以在這里測試
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.