有一张这样的图片<img src="http://www.123.com/456.jpg" width="100" height="100"/> 想把内容中的所有的这样的图片找到并且替换掉,求一正则表达式。width和height属性的顺序可能不一样,也可能没有这两个属性,或者还有其他的属性。不变的是src的值。
替换成什么内容?
正则为:
<img\s+src="http://www.123.com/456.jpg"\s+.*?/>
删除掉,替换成空字符。
貌似不行吧
@Impossible: Demo:http://jscode.chinacxy.com/82e66cee70342843f02171807b3fd208.aspx
<img src="http://www.123.com/456.jpg"[^/]*/>
src加上双引号之后,最后一个引号后面的就被注释掉了,这个需要转义吗?
@Impossible:
C#代码:
var regex = new Regex(@"<img src=""http://www.123.com/456.jpg""[^/]*/>", RegexOptions.Compiled | RegexOptions.IgnoreCase);
@dudu: 这个正则表达式不严谨,如果有任何一个width或者height属性在img和src之间的话,就匹配不出来了。
@Impossible:
不好意思,的确不严谨,改一下:
var regex = new Regex(@"<img[^""]+""http://www.123.com/456.jpg""[^/]*/>", RegexOptions.Compiled | RegexOptions.IgnoreCase);
你要用什么语言?JS的话一楼是对的,C#的话二楼是对的
把一楼的稍微改一下:
<img\s+.*?src="http://www.123.com/456.jpg"\s+.*?/>
这样就可以了