从字符串中删除特定图像

贾斯梅恩

我想从字符串中删除特定的图像。

我需要删除具有特定宽度和高度的图像。

我已经尝试过了,但这将删除第一张图像。

$description = preg_replace('/<img.*?>/', '123', $description, 1); 

我想删除具有特定宽度和高度的任何/所有图像。
例如,删除该图像<img width="1" height="1" ..../>

alxgb

我建议您不要使用正则表达式来解析(或操作)HTML,因为这不是一个好主意,这里有一个很好的SO为什么答案

例如,通过使用Peter的方法(preg_match_all('~<img src="(.+?)" width="(.+?)">~is', $content, $return);),您假定所有图像<img均以开头,之后是src,然后包含width=,所有类型的输入均与此完全相同,并带有那些精确的空格分隔符和那些特殊的引号。这意味着您将不会捕获要删除的任何这些完全有效的HTML图像:

<img src='asd' width="123"> <img src="asd" width="123"> <img src="asd" class='abc' width="123"> <img src="asd" width = "123">

虽然当然可以抓住所有这些情况,但您真的要付出所有这些努力吗?当您可以使用已经存在的工具来解析HTML时,为什么要重新发明轮子呢?看看另一个问题

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章