用 PHP 编写正则表达式以将 <img> 换行为 <a>

2022-08-30 14:37:50

我想这样做,以便图像的任何发生都用指向图像源的链接来包装

我如何在PHP中编写一个模式,以便我可以找到这些变体,这些变体分散在来自数据库的文本中:

<img src='/dir/dir2/image1.jpg' alt='blah blah blah'>
<img src="/dir/dir2/image2.jpg" alt="blah blah blah" />
<img src="/dir/dir2/image3.jpg" />

在所有情况下,我都希望它们显示在链接中。


答案 1

preg_replace("{<img\\s*(.*?)src=('.*?'|\".*?\"|[^\\s]+)(.*?)\\s*/?>}ims", '<a href=$2><img $1src=$2 $3/></a>', $str)

处理所有非实际案例

alt text


答案 2

我的我推荐PHP DOM而不是正则表达式?loadHTML()

http://php.net/dom

http://php.net/domdocument.loadhtml


推荐