匹配html input img标签中的value name位置不固定

 


需要匹配文本如下:
要求alt标签不为hello,不能与src中后面的图片名相同,不能为汉字
<img src="en/images/main_page/cover.jpg" alt="hello" />  
<img src="en/images/main_page/cover.jpg" alt="cover" />  
<img src="en/images/main_page/cover.jpg" alt="我是汉字" /> 
<img src="en/images/main_page/cover.jpg" alt=" yingwen " /> 
<img alt=" yingwen " src="en/images/main_page/cover.jpg"  /> 
<img src="images/en_adu_1_6_1_submenu_07out.gif" alt=" Material2 " name="Material2" width="130"  height="18" border="0" id="Materia12" ('Material2','','images/en_adu_1_6_1_submenu_07in.gif',1)" />
<img src="images/spacer.gif" width="1" height="55" alt="hello" />
<img title="動畫所見是牙冠的縱切面。蛀壞部分從琺瑯質開始,一直蔓延至象牙質,形成明顯的蛀牙洞"  alt="動畫所見是牙冠的縱切面。蛀壞部分從琺瑯質開始,一直蔓延至象牙質,形成明顯的蛀牙洞"  src="02_inside/teens_OD_3DAni_07a.gif">
 
有三种方法:
前两种用法为常用的,后一种不经常使用,但是非常简洁
<img[^>]+(?<=alt=")(?!hello|\2)([a-zA-Z]+)[^>]*src=["']?([^"']+\/(\w+).(?:jpg|gif|png))"|<img[^>]+(?<=src=["']?)([^"']+\/(\w+).(?:jpg|gif|png))"[^>]*alt="(?!hello|\5)[a-zA-Z]+[^>]*>
 
 
<img\b(?=[^>]*src="(?:[^"]*/)?([^"\.]*)\.[^"]*")(?=[^>]*alt="(?!hello")(?!\1)[^"]+")[^>]*/>
 
(?=.*?/([a-zA-Z0-9_]+)\.(?:jpg|gif|png))<img[^>]+?alt="(?!\1|hello")[a-zA-Z0-9._]+"[^>]*>
 
下面为常用去除input 标签中的value,name值,位置不固定,是上面方法的扩展
<input\b(?=[^>]*value=\s*["']?([^"]*))(?=[^>]*name=\s*["']?([^"]*))[^>]*>
 
(?=.*?value=\s*["']?([^"]*))<input[^>]+name=["']?([^"]+)"[^>]*>









本文转自 mcshell 51CTO博客,原文链接:http://blog.51cto.com/mcshell/1068461,如需转载请自行联系原作者

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值