温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
  • 忘记密码?
登录注册×
获取短信验证码
其他方式登录
点击 登录注册 即表示同意 《亿速云用户服务条款》
  • 服务器
  • 数据库
  • 开发技术
  • 网络安全
  • 互联网科技
登 录 注册有礼
最新更新 网站标签 地图导航
产品
  • 首页 > 
  • 教程 > 
  • 开发技术 > 
  • 怎么用正则表达式从HTML中匹配img标签的图片地址

怎么用正则表达式从HTML中匹配img标签的图片地址

发布时间:2022-09-05 10:09:29 来源:亿速云 阅读:98 作者:iii 栏目: 开发技术

这篇文章主要介绍“怎么用正则表达式从HTML中匹配img标签的图片地址”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“怎么用正则表达式从HTML中匹配img标签的图片地址”文章能帮助大家解决问题。

分析

每个网站中展示图片的地方,无非就是img标签或者style中background-image和background,先解决img标签中的图片。
首先,地址在标签的src属性之中,所以找寻src的位置是必须的。但是不只有img标签拥有src属性,video和style也同样拥有src属性。因此,只匹配src的位置是不够,还得确保这个src的位置在img标签中。

然后,就是匹配src后面的地址,匹配地址的方法已经有许多文章描述过了,不再多说,但本文中用了一个比较取巧的方式去匹配。

总的思路就是先匹配src的位置,在获取图片地址。

正则表达式

  • 首先是匹配src的位置,既然是找位置,那就需要用的正则表达式中预查(?),因为需要的图片地址是在src后面,所以用反向肯定预查,所以初步确定正则表达式可写成:

/(?<=判断条件)/ 至于反向肯定预查的判断条件,就是在img之后的src,所以正则表达式改成如下: /(?<=(img src="))/ 之所以匹配src=", 是因为想要直接就匹配到地址的开头位置,于是就顺手加上。
但是,因为img和src之间可能还存在class或者其他自定义属性,所以还要加上这些可能存在字符的匹配。但是因为这些字符的种类比较多,如双引号"",英文、数字、甚至是中文等等,一一匹配过于麻烦,有个取巧的方式就是匹配非>。
众所周知,>在HTML中是一个标签的结尾,所以它不可能出现在img标签内的img字符和src字符的中间,所以匹配位置的正则表达式可写成: /(?<=(img[^>]*src="))/

怎么用正则表达式从HTML中匹配img标签的图片地址

可以看到,能够成功找到图片地址的开头位置。

  • 既然位置找到了,那剩下的就是匹配地址了。这里可以使用其他相关文章说的匹配地址的正则表达式,但是和上面一样,同样可以取巧。
    HTML标签中,图片地址是以双引号"开头和结尾的,上面的匹配位置已经匹配到图片开头的双引号之后,那么图片地址还剩下一个双引号,就是结尾的那个。
    那么,直接匹配所有连续不为"的字符不就可以了,思路可能有点复杂,但是写起来简单:

/[^"]*/

  • 因此,总的正则表达式为:

/(?<=(img[^>]*src="))[^"]*/g 结尾加个g是表示匹配所有符合条件的字符串,现在就可以匹配出图片地址了:

怎么用正则表达式从HTML中匹配img标签的图片地址

关于“怎么用正则表达式从HTML中匹配img标签的图片地址”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识,可以关注亿速云行业资讯频道,小编每天都会为大家更新不同的知识点。

向AI问一下细节
推荐阅读:
  1. HTML的img标签
  2. HTML中img标签有什么用

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

html img
  • 上一篇新闻:
    Java基于Socket如何实现多人聊天室
  • 下一篇新闻:
    如何用C语言实现手写Map

猜你喜欢

  • mysql怎么高效导入大批量数据
  • nginx反向代理怎么配置
  • linux删除网卡后如何恢复
  • python新建文件并写入数据的方法是什么
  • c语言显示文件内容如何设置
  • nginx怎么重定向到其他url方法
  • sqlserver怎么大批量写入数据库
  • PostgreSQL安装及配置的方法是什么
  • PostgreSQL对比MySQL有哪些优点
  • db2怎么导出表结构和数据
最新资讯
  • PostgreSQL如何保证数据的持久性
  • 如何诊断和解决PostgreSQL中的死锁问题
  • 在PostgreSQL中如何使用事件触发器来监控数据库更改
  • 如何在PostgreSQL中使用触发器自动维护历史记录
  • 如何在PostgreSQL中进行跨数据库查询
  • PostgreSQL的缓存是如何工作的
  • PostgreSQL中的死锁是如何检测和解决的
  • 讨论如何在Core Data项目中引入测试驱动开发和持续集成流程
  • 描述在Core Data中如何针对特殊用例定制和优化存储策略
  • 如何在Core Data应用中实现跨平台数据共享与同步同时确保数据一致性和完整性
相关推荐
  • HTML img标签的src属性怎么用
  • HTML中IMG标签怎么用
  • HTML中图片<img>标签是什么
  • html中img标签的alt属性有什么用?
  • HTML img标签中的srcset属性有什么用
  • 正则表达式如何处理图片地址、img标签
  • html如何使用img标签添加图片效果
  • HTML中的<img>标签怎么用
  • html中<img>图片标签元素怎么用
  • html的img标签怎么使用

相关标签

改变html xhtml htmlunit html字符 html2canvas css+html html() html5+css html语义化 html5压缩上传 html文本标签 html5跨平台 html标签基础 cocos2d-html5 html5新特性 html/css html标记 html编辑器 htmlspecialchars() html表单
AI

代做工资流水公司江门个人银行流水查询南宁银行流水单制作厦门制作背调银行流水包头流水单查询东莞转账银行流水代开重庆工资流水开具舟山办入职流水德阳收入证明办理南宁购房银行流水查询襄阳代办银行流水电子版衡阳代做对公账户流水宜春流水单报价西宁贷款流水代开信阳自存流水模板泰州流水账单费用东莞银行流水电子版费用深圳打印银行对公流水宜昌办理银行流水单泉州查询工资流水账单沧州日常消费流水公司西安背调工资流水公司保定工资银行流水潍坊开企业贷流水银川公司流水模板许昌签证银行流水 模板莆田开企业流水打印济宁流水账单代开大庆查询薪资流水徐州打流水账单上饶制作贷款流水香港通过《维护国家安全条例》两大学生合买彩票中奖一人不认账让美丽中国“从细节出发”19岁小伙救下5人后溺亡 多方发声卫健委通报少年有偿捐血浆16次猝死汪小菲曝离婚始末何赛飞追着代拍打雅江山火三名扑火人员牺牲系谣言男子被猫抓伤后确诊“猫抓病”周杰伦一审败诉网易中国拥有亿元资产的家庭达13.3万户315晚会后胖东来又人满为患了高校汽车撞人致3死16伤 司机系学生张家界的山上“长”满了韩国人?张立群任西安交通大学校长手机成瘾是影响睡眠质量重要因素网友洛杉矶偶遇贾玲“重生之我在北大当嫡校长”单亲妈妈陷入热恋 14岁儿子报警倪萍分享减重40斤方法杨倩无缘巴黎奥运考生莫言也上北大硕士复试名单了许家印被限制高消费奥巴马现身唐宁街 黑色着装引猜测专访95后高颜值猪保姆男孩8年未见母亲被告知被遗忘七年后宇文玥被薅头发捞上岸郑州一火锅店爆改成麻辣烫店西双版纳热带植物园回应蜉蝣大爆发沉迷短剧的人就像掉进了杀猪盘当地回应沈阳致3死车祸车主疑毒驾开除党籍5年后 原水城县长再被查凯特王妃现身!外出购物视频曝光初中生遭15人围殴自卫刺伤3人判无罪事业单位女子向同事水杯投不明物质男子被流浪猫绊倒 投喂者赔24万外国人感慨凌晨的中国很安全路边卖淀粉肠阿姨主动出示声明书胖东来员工每周单休无小长假王树国卸任西安交大校长 师生送别小米汽车超级工厂正式揭幕黑马情侣提车了妈妈回应孩子在校撞护栏坠楼校方回应护栏损坏小学生课间坠楼房客欠租失踪 房东直发愁专家建议不必谈骨泥色变老人退休金被冒领16年 金额超20万西藏招商引资投资者子女可当地高考特朗普无法缴纳4.54亿美元罚金浙江一高校内汽车冲撞行人 多人受伤

代做工资流水公司 XML地图 TXT地图 虚拟主机 SEO 网站制作 网站优化