我有一个链接列表,其中一些包含http:/而不是http://但我无法搜索http:/因为http://也可能存在并且替换一个/多个可能会改变路径......
所以有人可以告诉我如何更改(ftp | http(s)):/ to(ftp:http(s))://
答案 0 :(得分:3)
将http://替换为http:/然后将http:/替换为http://;)这是一个快速而又脏的修复,但它可以正常工作。
答案 1 :(得分:0)
这应该有效(没有双重替换):
<?
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');
?>
如果没有双斜杠,这只会进行替换。