ASP是使用正则提取内容里所有图片路径SRC的实现代码(正则表达式获取图片地址)难以置信

随心笔谈5个月前更新 admin
206 00
🌐 经济型:买域名、轻量云服务器、用途:游戏 网站等 《腾讯云》特点:特价机便宜 适合初学者用 点我优惠购买
🚀 拓展型:买域名、轻量云服务器、用途:游戏 网站等 《阿里云》特点:中档服务器便宜 域名备案事多 点我优惠购买
🛡️ 稳定型:买域名、轻量云服务器、用途:游戏 网站等 《西部数码》 特点:比上两家略贵但是稳定性超好事也少 点我优惠购买

文章摘要

这篇文章介绍了如何使用自定义函数`RegImg`来提取网页中图片标签中的`src`属性。函数通过正则表达式匹配匹配的字符串,并返回所有匹配的`src`值。首先,定义了一个正则表达式对象`RegEx`,并设置其属性`IgnoreCase`为`True`以忽略大小写差异,`Global`为`True`以匹配整个字符串。然后,将正则表达式模式定义为匹配图片标签中的`<img>`标签,并提取`src`属性。通过`RegEx.test`判断是否存在匹配,`RegEx.Execute`执行搜索并获取匹配结果。最后,遍历匹配结果,提取并合并`src`值到`RetStr`中。整个过程围绕使用正则表达式提取网页中的图片源地址展开。


Function RegImg(TheStr)
    Dim RegEx
    Set RegEx = New RegExp ‘建立正则表达对象。
    RegEx.IgnoreCase =True ‘ 是否区分大小写,True为不区分且默认
    RegEx.Global = True ‘全部匹配还是只匹配第一个 
    RegEx.Pattern = “<img[^>]*src\s*=\s*[‘”&CHR(34)&”]?([\w/\-\:.]*)[‘”&CHR(34)&”]?[^>]*>” ‘ 搜索所使用的正则表达式
    If Regex.test(TheStr) Then  ‘ 判断是否有匹配值,返回True或者False。不受Global属性影响。
        Dim Matches
        Set Matches = RegEx.Execute(TheStr) ‘ 执行搜索。Execute 方法返回一个Matches 集合,其中包含了在 TheStr 中找到的每一个匹配的 Match 对象。如果未找到匹配,Execute 将返回空的 Matches 集合。
        For Each Match in Matches ‘ 遍历匹配集合。
        ‘RetStr = RetStr & Match.Value & “<br />” ‘获取整个img
        RetStr = RetStr & Match.SubMatches(0)&”||” ‘只取src
        Next
        RegImg = RetStr
    End If           
End Function

© 版权声明

相关文章