我需要在某些丢失网站网址的地方修改文字。
假设我有一个很大的html代码,在该代码中,某些地方的网站网址丢失,但有些地方却有。
示例:http://www.domain.com/blog/images/image.png
需要更改$html=preg_replace('%/blog/%','http://www.domain.com/blog/',$html);
所以我尝试了以下代码,
http://www.domain.com/blog/images/image.png -> http://www.domain.com/http://www.domain.com/blog/images/image.png
但是使用此代码,它也会改变以下行,
S='BDBCFBCFABDDEABCCDGAEAABCEAAHF'
我应该怎么跳过它?
基本上我需要将站点网址(http://www.domain.com/)添加到某些地方,只有在缺少的地方。
答案 0 :(得分:1)
它有点棘手。只需从网址中移除http://www.domain.com/
,然后手动将http://www.domain.com/
添加到网址。
尝试
$html = "http://www.domain.com/".str_ireplace('http://www.domain.com/','',$html);
OR
找到http://www.domain.com/http://www.domain.com/
添加两次的值,并将其替换为http://www.domain.com/
尝试
$html = preg_replace('%/blog/%','http://www.domain.com/blog/',$html);
$html = str_ireplace('http://www.domain.com/http://www.domain.com/','http://www.domain.com/',$html);
OR(@anonymous解决方案)
$html = preg_replace('@(http://www.domain.com)?/blog@iU', 'http://www.domain.com/blog', $html)