当前位置: 首页 > news >正文

正则表达式贪婪模式和非贪婪模式

一、贪婪模式

贪婪模式表示尽可能多的匹配字符串,正则表达式六个量词元字符?、+、*、{n}、{n,m}、{n,}默认是贪婪模式
接下来引入一个场景来分析说明
获取html a标签href属性的值

<a href="https://www.baidu.com/" attr="abc"></a> <a href="https://www.163.com"></a>


正则表达式href="(.+)"匹配超出第一个href的值,此外还匹配到第二个href的值,属于过度匹配


印证了上面说的贪婪模式

二、非贪婪模式

非贪婪模式表示尽可能少的匹配所搜索的字符串,在原本的6个量词元字符后面加上问号?,表示非贪婪模式??、+?、*?、{n}?、{n,m}?、{n,}?
以上文说到的获取href的值作为案例,
把原本的正则表达式href="(.+)"加上问号,href="(.+?)"变为非贪婪模式

最终达到我们获取href值的效果

http://www.lryc.cn/news/178892.html

相关文章:

  • 借助 ControlNet 生成艺术二维码 – 基于 Stable Diffusion 的 AI 绘画方案
  • Codeforces Round 892 (Div. 2) - E. Maximum Monogonosity 思维dp 详细解析
  • R语言中的数据重塑
  • 基于Java实现的社区团购系统设计与实现(源码+lw+部署文档+讲解等)
  • nodejs+vue网上婚纱购物系统elementui
  • 【2023集创赛】加速科技杯三等奖作品:私密性高精度刷手身份认证系统
  • 1500*C. Kefa and Park(dfstree)
  • 【2023保研】双非上岸东南网安
  • Redis与Mybatis
  • MySQL架构 InnoDB存储引擎
  • K8S-CNI
  • Redis 集合类型(Set)和命令 (数据类型 四)
  • thinkphp5 如何模拟在apifox里面 post数据接收
  • 建造者模式 创建型模式之三
  • 发布以太坊测试网络中的第一笔交易
  • No module named ipykernel解决方案
  • Java 基于 SpringBoot 的校园疫情防控系统
  • windows的ui自动化测试相关
  • Mybatis 二级缓存(使用Ehcache作为二级缓存)
  • C语言 Cortex-A7核 IIC实验
  • 【每日一题】2769. 找出最大的可达成数字
  • 开源电子合同签署平台小程序源码 在线签署电子合同小程序源码 合同在线签署源码
  • 36 二叉树中序遍历
  • 广州华锐互动:VR结绳逃生训练模拟真实火灾场景,增强训练沉浸感
  • Flink安装及简单使用
  • QT信号槽
  • Spring Boot 技术架构图(InsCode AI 创作助手辅助)
  • python使用mitmproxy和mitmdump抓包在手机上抓包(三)
  • react create-react-app v5 从零搭建(使用 npm run eject)
  • 在微信小程序中跳转到另一个小程序(多种实现方式)