shell从入门到精通(23)贪婪匹配、非贪婪以及独占模式

文章目录

    • 贪婪与非贪婪的区别
    • 示例
    • 贪婪匹配的特点--自动回溯以满足匹配
    • 独占模式
    • 总结

贪婪与非贪婪的区别

在正则表达式中,贪婪匹配和非贪婪匹配是指匹配模式下的不同行为。

贪婪匹配:
贪婪匹配会尽可能多地匹配符合模式的字符。换句话说,它会一直匹配直到无法再匹配为止。例如,在正则表达式\d+中,加号表示匹配一个或多个数字,而贪婪匹配会尽可能多地匹配连续的数字,直到遇到非数字字符为止。

非贪婪匹配(也称作懒惰匹配):
非贪婪匹配会尽可能少地匹配符合模式的字符,只匹配满足条件的最少字符数。在大多数正则表达式中,可以通过在量词后面加上问号来实现非贪婪匹配。例如,\d+?表示匹配一个或多个数字,但是尽可能少地匹配,直到遇到其他字符为止。

简而言之,贪婪匹配会尽可能多地匹配,而非贪婪匹配会尽可能少地匹配,根据具体的需求选择适当的匹配方式。

示例

下面是一些使用贪婪匹配和非贪婪匹配的示例脚本:

贪婪匹配示例:

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/841942.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

springboot vue 开源 会员收银系统 (4) 门店模块开发

前言 完整版演示 前面我们对会员系统 springboot vue 开源 会员收银系统 (3) 会员管理的开发 实现了简单的会员添加 下面我们将从会员模块进行延伸 门店模块的开发 首先我们先分析一下常见门店的管理模式 常见的管理形式为总公司 - 区域管理(若干个门店&#xff…

Java实现插入排序、冒泡排序、堆排序、希尔排序、选择排序、优先队列排序、快速排序、归并排序(详细注释,原理解析)

插入排序 package learn;import java.util.Arrays;/** 每次都将当前元素插入到左侧已经排序的数组中,使得插入之后左侧数组依然有序。* 速度优于选择排序*/ public class InsertSort {public static void insertSort(int[] a) {int n a.length;for (int i 1; i &…

Elasticsearch优点和缺点以及要点和难点具体应用

Elasticsearch是一个开源、分布式、实时的搜索和分析引擎,它位于Elastic Stack(以前称为ELK Stack)的核心。以下是关于Elasticsearch的一些主要特点和功能: 1.分布式和可扩展性:Elasticsearch是分布式的,可以轻松扩展到多个节点以处理大规模数据集和高并发请求。通过将数…

C语言 | Leetcode C语言题解之第113题路径总和II

题目: 题解: int** ret; int retSize; int* retColSize;int* path; int pathSize;typedef struct {struct TreeNode* key;struct TreeNode* val;UT_hash_handle hh; } hashTable;hashTable* parent;void insertHashTable(struct TreeNode* x, struct Tr…

C++干货 --类和对象(二)

前言: 上文中,我们介绍了类这一重要知识点,包括为什么要有类、类的使用方法、封装、以及对象实例化。详情可以去看我的文章:写文章-CSDN创作中心C干货 --类和对象(一)-CSDN博客写文章-CSDN创作中心 这篇文章,我们简单…

我学会了用插件来辅助PostgreSQL,可拷,很刑!

作者:IT邦德 中国DBA联盟(ACDU)成员,10余年DBA工作经验, Oracle、PostgreSQL ACE CSDN博客专家及B站知名UP主,全网粉丝10万 擅长主流Oracle、MySQL、PG、高斯及Greenplum备份恢复, 安装迁移,性能优化、故障…

【蓝桥杯省赛真题44】python计算N+N的值 中小学青少年组蓝桥杯比赛 算法思维python编程省赛真题解析

目录 python计算NN的值 一、题目要求 1、编程实现 2、输入输出 二、算法分析 三、程序编写 四、程序说明 五、运行结果 六、考点分析 七、 推荐资料 1、蓝桥杯比赛 2、考级资料 3、其它资料 python计算NN的值 第十四届蓝桥杯青少年组python省赛真题 一、题目要求…

Makefile学习笔记18|u-boot顶层Makefile04

Makefile学习笔记18|u-boot顶层Makefile04 希望看到这篇文章的朋友能在评论区留下宝贵的建议来让我们共同成长,谢谢。 这里是目录 C语言标准 # With the move to GCC 6, we have implicitly upgraded our language # standard to GNU11 (see https://gcc.gnu.org/…

WordPress--解决迁移后页面404(打不开)的问题

原文网址:WordPress--解决迁移后页面404的问题_IT利刃出鞘的博客-CSDN博客 简介 本文介绍WordPress迁移后部分页面404(打不开)的解决方案。 方案:修改固定链接 简介 要在刚建好网站,还没导入数据之前修改固定链接,否则可能导…

【教学类-58-05】黑白三角拼图05(2-10宫格,每个宫格随机1张-6张,带空格纸,1页3张黑白3张白卡)

背景需求: 【教学类-58-04】黑白三角拼图04(2-10宫格,每个宫格随机1张-6张,带空格纸,1页6张黑白,1张6张白卡)-CSDN博客文章浏览阅读582次,点赞16次,收藏3次。【教学类-58…

Mac安装pytorch

先下载 Anaconda | The Operating System for AI 网速慢,用中国大陆镜像:NJU Mirror 之前装python3时用的是pip3,这里说一下这pip与conda的区别 Conda和pip都是Python包管理工具,用于安装和管理Python包 包管理范围&#xff1a…

汽车数据应用构想(一)

自从电动汽车GB/T32960标准颁布,要求所有电动汽车必须上传数据开始,各车厂就开始花费大量的人力物力,用于数据的上传与存储。同时随着智能化、网联化的趋势,不断丰富上传数据的内容与数量。数据已成为车厂的重要资产,但…

Day16

Day16 一、迭代器 深入迭代器-foreach的底层 for (String element : list) {System.out.println(element);}底层: //使用foreach循环遍历集合的底层实现:String element;for(Iterator it list.iterator();it.hasNext();System.out.println(element))e…

微服务:eureka的搭建,以及服务注册、服务发现、负载均衡

eureka 搭建 新建一个Module,maven项目&#xff0c;导入依赖。 <dependencies><dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-starter-netflix-eureka-server</artifactId></dependency><…

月入10万+管道收益,揭秘旅游卡运营的5个阶段!

网上的项目确实繁多&#xff0c;只要深入研究&#xff0c;总能找到适合自己的赚钱方式。在互联网上运营&#xff0c;关键在于理解其底层逻辑。旅游卡项目&#xff0c;就是一个能实现月入10万的实例。接下来&#xff0c;我将为你揭密旅游卡运营的5个阶段&#xff1a; 1、先赚成…

24年湖南教资认定即将开始,别被照片卡审!

24年湖南教资认定即将开始&#xff0c;别被照片卡审&#xff01;

Jenkins 流水线(Pipeline)详解

大家好&#xff0c;Jenkins 流水线&#xff08;Pipeline&#xff09;是一种可编排的持续集成和交付&#xff08;CI/CD&#xff09;方法&#xff0c;它以代码的方式定义整个软件开发过程中的构建、测试和部署流程。接下来就跟大家分享一下Jenkins 流水线&#xff08;Pipeline&am…

2024年5月26日 (周日) 叶子游戏新闻

资深开发者&#xff1a;3A游戏当前处于一种尴尬的中间地带游戏行业整体&#xff0c;尤其是3A游戏正处于艰难时期。尽管2023年3A游戏佳作频出&#xff0c;广受好评&#xff0c;但居高不下的游戏开发成本&#xff08;传闻《漫威蜘蛛侠2》的制作成本高达3亿美元&#xff09;正严重…

【机器学习结合AI绘画工具】——开启艺术创作的新纪元

目录 一、AI绘画工具的发展历程 二、AI绘画工具的技术原理 实例说明 三、AI绘画工具在艺术创作中的应用 实例网站 四、AI绘画工具的影响与未来展望 结论 机器学习和人工智能&#xff08;AI&#xff09;在过去的十年里取得了显著的进展。特别是在艺术创作领域&#xff0c…

【笔记】太久没有写selenium了

以前qyqt和selenium用来开发一个自动化测试工具&#xff0c;现在回忆一下已经过了将近6年。 DeprecationWarning: find_element_by_* commands are deprecated. Please use find_element() 例如&#xff1a;find_element_by_xpath改为web.find_element(By.XPATH from seleniu…