原文:shell 实现懒惰匹配或最小匹配

. 简介 正则表达式默认情况下为贪婪模式,即在满足表达式的情况下尽可能多的匹配字符 但有时可能需要在满足要求的情况下匹配尽可能少的字符,这就要用到懒惰模式 . 基本用法 这是一个文本文件,匹配要求:以 concat 开头,之后任意个字符,然后是英文逗号的文本 . 默认情况下的贪婪模式 grep oP concat . , test .xml . 懒惰模式 和 限定符都是贪婪的,因为它们会尽可能多 ...

2020-05-18 14:56 0 800 推荐指数:

查看详情

shell 变量匹配

只有在pattern中使用了通配符才能有最长最短的匹配,否则没有最 长最短匹配之分结构中的pattern支持通配符* 表示零个或多个任意字符?表示零个或一个任意字符[...]表示匹配中括号里面的字符[!...]表示不匹配中括号里面的字符 假设我们定义了一个 ...

Fri Mar 15 19:40:00 CST 2019 0 1080
shell——正则匹配

在看一个mysql的helm-charts的时候,看到一段shell代码,才发现原来shell也能支持正则匹配。那很多场景就不需要用awk,grep这些了,会简洁很多。 demo1 使用内置变量BASH_REMATCH获取匹配后的值,该变量是只读 ...

Sun Apr 17 22:00:00 CST 2022 0 2316
shell 中 贪婪匹配 和 非贪婪匹配

举个栗子:    v=jfedu.shiyiwen.com echo ${v%.*} 一个%为非贪婪匹配,即匹配最短结果。%从右到左进行非贪婪匹配匹配什么呢? 匹配已 .*的字符。 那么当然是匹配到了.com 然后执行删除匹配到的字符。结果就是(这里的 "." 相当于 ...

Tue Dec 01 19:54:00 CST 2015 0 4435
shell grep正则匹配汉字

Shell grep正则匹配中文 测试文本 demo_exe.c,内容如下,需要注意保存的编码格式,对输出到终端有影响: 我们中文操作系统ASNI默认是GBK的。 1、匹配特定文字: $ grep -nP "\xE4\xB8\xAD\xE6\x96\x87|\xD6 ...

Sat Apr 11 00:01:00 CST 2015 0 9269
shell 正则匹配IP地址

比如255.255.255.255 ,共4段,我们将255分为四个部分,0-99,100-199,200-249,250-255 0-99:[1-9]?[0-9] # [1-9]? 表示1到9匹配1此或0次,0到9匹配一次 100-199:1[0-9 ...

Wed Aug 05 22:30:00 CST 2020 0 879
sed替换字符串的贪婪匹配最小匹配

​ 最近在shell对文本进行操作,遇到了使用sed进行最小匹配的问题。sed默认匹配规则是贪婪匹配。 举例来说,如果文本内容为: (aa)bb(cc) 使用sed匹配: '/(.*)/' 匹配结果为: (aa)bb(cc) 上述结果即贪婪匹配 ...

Tue Jun 22 22:22:00 CST 2021 0 168
 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM