我有一个要求,我需要修改一个不以'/>'
结尾的html字符串中的html'img'标签
例如:<img src="">
需要更改为<img src=""/>
我正在使用以下正则表达式:<img(.*[^/])>
替换为<img$1/>
这适用于以下情况:<center><img src=""/></center>
正则表达式返回:<center><img src=""></center/>
有关如何影响此正则表达式的任何建议,直到img标记的结尾?感谢。
答案 0 :(得分:0)
你可以用这个:
<\s*img\s+([^>]*=(?:\".*?\"|\'.*?\'))[\s\w\-]*>
以下替换为:
<img $1/>
这将符合这些简单和复杂的情况:
<img src="images/a.jpg" title="test"><br/>
<img src="a/b.jpg" >
<span><img src="a.jpg"></span>
<img src="" title="">
<img src="" data-val>
<img src="a.jpg" title="a'>b">
<img src="a.jpg" title='a">b'>
<img src="a.jpg" title='a>=b"=>' >
但未遵循:
<img src="a.jpg" />
<imgXTag src="b.jpg" >
<img src="a.jpg" / >