我正在使用html源显示在我的本地应用反应中。但是,当P标签中包含图片时,该应用就会崩溃。
所有图像可能不会被P标签包围。
我有这个代码片段可以删除图像周围的P标签,但是只有在p标签中只有图像而没有文本的情况下,它才有效。
这适用于仅包含图片(无文字)的P标签
$content = preg_replace('/<p>\s*(<a .*>)?\s*(<img .* \/>)\s*(<\/a>)?\s*<\/p>/iU', '\1\2\3', $content);
它适用于:
<p><img src="..."></p>
但不是:
<p>text.<img src="..."></p>
带有文本的P标签的预期结果:
<p>text.</p><img src="...">
不含文本的P标签的预期结果(已经有效)
<img src="...">