求教个正则写法

shawn_yang 2013-05-24 12:47:18
在网上看到有人求助如下正则

<img id="a1" src="Images\未命名.jpg"/>
<img src="Images\未命名.jpg" id="a1"/>
<img id=“img1” src="Images\未命名.jpg"/>
<img src="Images\未命名.jpg"/>
<img src="Images\未命名.jpg" id="a1" name="a001"/>

要求捕获不包含id="a1"的的<img ../>

也就是说上面里
<img id=“img1” src="Images\未命名.jpg"/>
<img src="Images\未命名.jpg"/>符合


要求写出正则来
...全文
189 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
shawn_yang 2013-05-24
  • 打赏
  • 举报
回复
都在吃午饭吗,有人回答一下不
拔剑自然神 2013-05-24
  • 打赏
  • 举报
回复
(?i)<img(?![^>]*?id=(['"])a1\1)[^>]*?> 上面的表示匹配(?!)==>后面非。。。 【^>】*?表示最少右括号的位置 ,\1表示前面的相同一样的表达式(['"]) 后面同样是的。
  • 打赏
  • 举报
回复
string pattern=@"(?i)^<img((?!id=([""'])a1\2)[^<>])*>$";
拔剑自然神 2013-05-24
  • 打赏
  • 举报
回复
(?is)<img[^>]*?id=.(?:(?!a1)[^>]*?).[^>]*?/>这个可行。
豁燃开朗 2013-05-24
  • 打赏
  • 举报
回复
加我QQ:406485989,精通正则
shawn_yang 2013-05-24
  • 打赏
  • 举报
回复
引用 7 楼 RedFox_Moon 的回复:
(?is)<img[^>]*id=.(?:(?!a1)[^>]*).[^>]*/>
不过你这个正则一个bug <img id="a1" src="Images\未命名.jpg"/> <img src="Images\未命名.jpg" id="a1"/> <img id=“img1” src="Images\未命名.jpg"/> <img src="Images\未命名.jpg" id="a1" name="a001"/> <img src="Images\未命名.jpg"/> <img src="Images\未命名.jpg" id="a1" name="a001"/>也会捕获
shawn_yang 2013-05-24
  • 打赏
  • 举报
回复
引用 7 楼 RedFox_Moon 的回复:
(?is)<img[^>]*id=.(?:(?!a1)[^>]*).[^>]*/>
也行,大神真多啊
拔剑自然神 2013-05-24
  • 打赏
  • 举报
回复
(?is)<img[^>]*id=.(?:(?!a1)[^>]*).[^>]*/>
shawn_yang 2013-05-24
  • 打赏
  • 举报
回复
引用 5 楼 Return_false 的回复:
string pattern = @"(?i)<img(?![^>]*?id=(['""]?)[^'""]*?a1[^'""]*?\1)[^>]*?>";
大神厉害,能解释一下这个正则吗
  • 打赏
  • 举报
回复
string pattern = @"(?i)<img(?![^>]*?id=(['""]?)[^'""]*?a1[^'""]*?\1)[^>]*?>";
天下如山 2013-05-24
  • 打赏
  • 举报
回复
么想出来..
shawn_yang 2013-05-24
  • 打赏
  • 举报
回复
引用 2 楼 Chinajiyong 的回复:
为什么不用jquery选择器
学习一下正则用法
EnForGrass 2013-05-24
  • 打赏
  • 举报
回复
为什么不用jquery选择器

110,476

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧