preg_replace

时间:2015-10-28 02:31:15

标签: php regex preg-replace preg-match

我使用preg_replace在图片下方添加文字。

My regex看起来像:

/<img.+?>/i

当img标记单独时,它按预期工作

<img src="image.jpg" /> Lorem ipsum

但是,当图像包含在链接中时,文本也会被包含在链接中:

<a href="http://www.google.com/"><img src="image.jpg" /> Lorem ipsum</a>

Image with problem

防止此行为的最佳方法是什么?

1 个答案:

答案 0 :(得分:0)

毕竟不是那么难。我相信这是你想要的东西:

/<img.+\.\w+".|\/>/i

我做的主要是让匹配在到达扩展名末尾时停止(。\ w +)并在末尾加上引号,解释“在那部分之后。然后我添加了一个OR所以/&gt;部分包含在匹配中,但不包括其他垃圾。我打算尝试一下该部分,但意识到这比它需要的更难!

希望有所帮助!