linux通配符和正则表达式

本文介绍了Bash环境下通配符的应用及正则表达式的特殊符号,包括常用的POSIX字符组,帮助读者更好地掌握Linux Shell脚本中的模式匹配技巧。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 

http://blog.youkuaiyun.com/pipisorry/article/details/24143801

通配符(bash 操作)

在 bash 操作环境中还有一个非常有用癿功能,那就是通配符 (wildcard) ! 用 bash 处理数据就更方便了!

常用通配符

[::]见下表POSIX字符组

除了通配符外,bash 环境中的特殊符号

Note:

1. 理论上,你的『档名』尽量不要使用上述字符

2. 如bash命令find可以使用通配符

 

正则表达式

正则表达式是一个查询的字符串,它包含一般的字符和一些特殊的字符,特殊字符可以扩展查找字符串的能力,正则表达式在查找和替换字符串的作用不可忽视,它能很好提高工作效率。 

linux正则表达式中的特殊符号:POSIX字符组

POSIX字符组说明范围
[[:alnum:]]字母字符和数字字符[a-zA-Z0-9]
[[:alpha:]]字母[a-zA-Z]
[[:ascii:]]ASCII字符[\x00-\x7F]
[[:blank:]]空格字符和制表符[ \t]
[[:cntrl:]]控制字符[\x00-\x1F\x7F]
[[:digit:]]数字字符[0-9]
[[:graph:]]空白字符之外的字符[\x21-\x7E]
[[:lower:]]小写字母字符[a-z]
[[:print:]][:graph:]和空白字符[\x20-\x7E]
[[:punct:]]标点符号[][!”#$%&’()*+,./:;<=>? @\^_`{|}~-]
[[:space:]]空白字符[ \t\r\n\v\f]
[[:upper:]]大写字母字符[A-Z]
[[:xdigit:]]十六进制字符[A-Fa-f0-9]

 

基础正则表达式字符汇整 (characters)

Note:

1.表达式 说明 
\t 制表符. 
\n 新行. 
. 匹配任意字符. 
| 匹配表达式左边和右边的字符. 例如, "ab|bc" 匹配 "ab" 或者 "bc". 
[] 匹配列表之中的任何单个字符. 例如, "[ab]" 匹配 "a" 或者 "b". "[0-9]" 匹配任意数字. 
[^] 匹配列表之外的任何单个字符. 例如, "[^ab]" 匹配 "a" 和 "b" 以外的字符. "[^0-9]" 匹配任意非数字字符. 
* 其左边的字符被匹配任意次(0次,或者多次). 例如 "be*" 匹配 "b", "be" 或者 "bee". 
+ 其左边的字符被匹配至少一次(1次,或者多次). 例如 "be+" 匹配 "be" 或者 "bee" 但是不匹配 "b". 
? 其左边的字符被匹配0次或者1次. 例如 "be?" 匹配 "b" 或者 "be" 但是不匹配 "bee". 
^ 其右边的表达式被匹配在一行的开始. 例如 "^A" 仅仅匹配以 "A" 开头的行. 
$ 其左边的表达式被匹配在一行的结尾. 例如 "e$" 仅仅匹配以 "e" 结尾的行. 
() 影响表达式匹配的顺序,并且用作表达式的分组标记. 
\ 转义字符. 如果你要使用 "\" 本身, 则应该使用 "\\".

2.正则表达式中\1表示第一个括号里面匹配内容。例子见下。

3.注意数字表示是[0-9]而不能使用\d, 如find命令-regex参数中的数字表示

from:http://blog.youkuaiyun.com/pipisorry/article/details/24143801

ref:http://linux.vbird.org/linux_basic/0330regularex.php#basic_regexp

Linux Shell 通配符、元字符、转义符使用

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值