高分求解一个PHP 正则表达式替换字符串,不存在则插入。 20
看代码:<imgsrc="#"width="10"height="5"/><imgsrc="#"/><imgsrc="#"width="10"/><imgsrc="#"h...
看代码:
<img src="#" width="10" height="5" />
<img src="#" />
<img src="#" width="10" />
<img src="#" height="10" />
问题:
把img标签中的width,height的值替换成另外数值,如100,200
但上面的字符串中有的img可能没有width,height属性,所以需要将width,height属性加上。
最后需要的格式类似:
<img src="#" width="100" height="200" />
<img src="#" width="100" height="200" />
<img src="#" width="100" height="200" />
<img src="#" width="100" height="200" />
请注意,其中100,200这数值是动态的,并不是固定值。
谢了! 展开
<img src="#" width="10" height="5" />
<img src="#" />
<img src="#" width="10" />
<img src="#" height="10" />
问题:
把img标签中的width,height的值替换成另外数值,如100,200
但上面的字符串中有的img可能没有width,height属性,所以需要将width,height属性加上。
最后需要的格式类似:
<img src="#" width="100" height="200" />
<img src="#" width="100" height="200" />
<img src="#" width="100" height="200" />
<img src="#" width="100" height="200" />
请注意,其中100,200这数值是动态的,并不是固定值。
谢了! 展开
3个回答
展开全部
正则不能替换不存在的项
所以我的思路是把所有src属性匹配出来,加入到格式化的字符串中
preg_replace('/<img[^>]*?src="([^"]+)"[^>]*>/im', '<img src="$1" width="100" height="100">', $str);
所以我的思路是把所有src属性匹配出来,加入到格式化的字符串中
preg_replace('/<img[^>]*?src="([^"]+)"[^>]*>/im', '<img src="$1" width="100" height="100">', $str);
追问
用什么方法解决不重要,preg_replace也是可以的,不过我是要替换width和height,不是src.
谢谢你的解答:)
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
先获得所有的img,然后去除img的所有width,height属性,最后重新索引下img数组,为每个img插入属性width,height
追问
麻烦代码实现,谢谢啦
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
不考虑jquery吗?
追问
问题中举例img标签只是为了方便说明问题,实际上是要对字符串进行操作,跟HTML无关,所以Jquery也是没办法的。
谢谢你的建议:)
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询