我有一个链接列表,其中一些包含 http:/ 而不是 http:// 但我无法搜索 http:/ 因为 http:// 也可能存在并且将一个 / 替换为多个可能会改变路径。 ..
那么有人可以告诉我如何将 (ftp|http(s)):/ 更改为 (ftp:http(s))://
将 http:// 替换为 http:// ,然后将 http:/ 替换为 http:// ;) 这是一个快速而肮脏的修复方法,但它确实有效。
这应该有效(没有双重替换):
<?
echo preg_replace("#(http|ftp|https):/([^/])#", "$1://$2", 'http://www.google.com');
echo "<br>";
echo preg_replace("#(http|ftp|https):/([^/])#", "$1://$2", 'http:/www.google.com');
?>
如果没有双斜杠,这只会进行替换。