获取指定标签的指定属性的正则表达式

本文介绍了一种使用正则表达式来抓取HTML标签中特定属性的方法,特别针对img标签的src属性进行了详细说明,并提供了具体的正则表达式实例。

获取指定标签的指定属性的正则表达式

  33人阅读  评论(0)  收藏  举报
获取指定标签的指定属性的正则表达式

(?<=<(?:XXXXX)[^>]*(?<start>(?:xxxxx)(?:/s*=/s*(?<end>["']?))))(?:[^/s"'>]*) 
这个是获取指定标签的指定属性的表达式 

其中 
XXXXX就是指定的标签 如果有多个(?:XXXXX|XXXXX|XXXXX) 
xxxxx就是指定的属性 如果有多个(?:xxxxx|xxxxx|xxxxx) 
group("start") 是属性的前缀 (xxxxx=") 其中xxxxx是你的属性 后面可以忽略"="号前后的空格 并且能够区分包围属性值的 双引号 单引号 或 空 
group("end") 是包围属性值的 双引号 单引号 或 空 

以上无法分析你的图片类型如果需要分辨图片类型 则在上面表达式后面加上下面的表达式

 

说多了怕你不懂给你个实际点的表达式 
(?<=<(?:img)[^>]*(?<start>(?:src)(?:/s*=/s*(?<end>["']?))))(?:[^/s"'>]*)/.(?:jpg|gif|jpeg|bmp|png) 

测试: 
<IMG src= '/eicms/wwwroot/resources/12/2006101207263154.jpg' border=0><IMG src ="/eicms/wwwroot/resources/1/20061012023459298.jpg" border=0> 

match到2个分别是 
/eicms/wwwroot/resources/12/2006101207263154.jpg 
组"start" 为 (src= ') 
组"end" 为 (') 
/eicms/wwwroot/resources/1/20061012023459298.jpg 
组"start" 为 (src =") 
组"end" 为 (") 

如果你不需要里面的2个组 可以用这个表达式 
(?<=<(?:img)[^>]*(?:(?:src)(?:/s*=/s*(?:["']?))))(?:[^/s"'>]*)/.(?:jpg|gif|jpeg|bmp|png)   

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值