我写了一个搜索html内容的脚本,并用链接的关键字
替换了一些关键字代码:
$text = '<p>hello</p>
<img src="hello.png" />';
echo str_replace('hello', '<a href="hello">hello</a>', $text);
结果:
<p><a href="hello">hello</a></p>
<img src="<a href="hello">hello</a>.png" />
现在你可以看到图像的src属性被操纵了,我不想要这个。
如何排除正在搜索替换的 img标记 html标记?
任何帮助将不胜感激
答案 0 :(得分:1)
更简单的解决方案
echo str_replace('<p>hello</p>', '<a href="hello"></a>', $text);
广泛的REGEX解决方案
PHPDOM解决方案
答案 1 :(得分:0)
尝试正则表达式
$text = '<p>hello</p>
<img src="hello.png" />';
echo preg_replace("/hello(?!.(png|jpg))/", "<a href='hello'>here</a>", $text);