function RepImg($text,$copyflash){ $exp1="[--copyimg--]"; $exp2="[/--copyimg--]"; $zz1="/\<(img|IMG) (.*?)(src|SRC)=('|\"|\\\\\"|)(.+?)(.jpg|.JPG|.gif|.GIF|.png|.PNG|.bmp|.BMP|.jpeg|.JPEG)(.*?)>/is"; $text=preg_replace($zz1,"<\\1 ",$text'>\\2\\3=\\4".$exp1."\\5\\6".$exp2."\\7>",$text); return $text;}$url=RepImg('<img src="'">http://127.0.0.1/image/attachement/jpg/0023aea9dd430ebdcc4005.jpg">');echo $url;
出来的结果是:<img src="[--copyimg--]http://127.0.0.1/image/attachement/jpg[/--copyimg--]/0023aea9dd430ebdcc4005.jpg">
而我要的结果是:<img src="[--copyimg--]http://127.0.0.1/image/attachement/jpg/0023aea9dd430ebdcc4005.jpg[/--copyimg--]">
请帮忙解惑,谢谢!
请先检查原始参数数据
global $saveurlimgclearurl;
$exp1="[--copyimg--]";
$exp2="[/--copyimg--]";
$zz1="/\<(img|IMG) (.*?)(src|SRC)=('|\"|\\\\\"|)(.+?)(.jpg|.JPG|.gif|.GIF|.png|.PNG|.bmp|.BMP|.jpeg|.JPEG)(.*?)>/is";
$text=preg_replace($zz1,"<\\1 \\2\\3=\\4".$exp1."\\5\\6".$exp2."\\7>",$text);
return $text;
}
$url=RepImg('<img src="http://127.0.0.1/image/attachement/jpg/0023aea9dd430ebdcc4005.jpg">');
echo $url;
function RepImg($text,$copyflash=''){
global $saveurlimgclearurl;
$exp1="[--copyimg--]";
$exp2="[/--copyimg--]";
$zz1="/\<(img) (.*?)(src)=('|\"|\\\\\"|)(.+?)(\.jpg|\.gif|\.png|\.bmp|\.jpeg)(.*?)>/is";
$text=preg_replace($zz1,"<\\1 \\2\\3=\\4".$exp1."\\5\\6".$exp2."\\7>",$text);
return $text;
}
$url=RepImg('<img src="http://127.0.0.1/image/attachement/jpg/0023aea9dd430ebdcc4005.jpg">');
echo $url;注意: /i 是不区别大小写,所有不需要加上大小写判定
. 代表一个任意字符。使用 \ 将其转意. 因为你上面的
http://127.0.0.1/image/attachement/jpg/0023aea9dd430ebdcc4005.jpg
中的 /jpg 符合正则中 .jpg