preg_replace链接绝对路径的相对路径

时间:2017-10-19 11:10:12

标签: php

我有以下代码来添加域名(如果不存在)以更改字符串中绝对路径的所有相对路径。

preg_replace("/(href|src)\=\"([^(http|https|#|ftp)])(\/)?/", "$1=\"$domain$2", $st);

字符串值

<link rel="stylesheet" href="/asset/css/test.css"><link rel="stylesheet" href="/asset/css/two.css"><link rel="stylesheet" href="//upload.com/css/test3.css">

我需要忽略与&#34; //&#34;原样。如何在preg_replace()中添加它 例如,如果链接是// somelink / somedir,则不应修改它。 请帮帮我。

1 个答案:

答案 0 :(得分:0)

将模式更改为此应该可以解决问题

preg_replace("/(href|src)\=\"([^(http|https|#|ftp|\/\/)])(\/)?/", "$1=\"$domain$2", $st);