shell语言-29-正则表达式


在这里插入图片描述
在这里插入图片描述
数量限定符
在这里插入图片描述
位置限定符
在这里插入图片描述

1.基础正则

^A        ##搜索以A开头的
A$        ##搜索以A结尾的
^$        ##表示空行
.         ##代表且只能代表任意一个字符
\         ##例:\. 只代表点本身,转义符号,让有特殊身份意义的字符还原
\n        ##换行符
\r        ##匹配回车
\w        ##匹配任意一个字符和数字
*         ##重复0次或多次前面的一个字符
.*        ##匹配所有字符 例:^.* 以任意多个字符开头,.*$以任意多个字符结尾
[abc]     ##匹配字符集内的任意一个字符
[^abc]    ##匹配不包含 ^ 后的任意字符的内容。中括号里的 ^ 为取反
[1-9]     ##表示匹配括号内的范围内的任意字符
a\{n,m\}  ##重复n到m次前一个重复的字符。若用egrep、sed -r可以去掉斜线
\{n,\}    ##重复至少n 次前一个重复的字符。若用egrep、sed -r可以去掉斜线
\{n\}     ##重复n 次前一个重复的字符。若用egrep、sed -r可以去掉斜线
\{,m}\    ##重复少于m次

注:egrep,grep –E或sed –r 过滤一般特殊字符可以不转义

2.扩展正则(egrep或grep -E)

+          ##重复一次或一次以上前面的一个字符
?          ##重复0次或一次前面的一个字符
|          ##或者的意思,用或的方式查找多个符合的字符串
()         ##找出括号内的字符串

3.案列

^linux              ##以linux开始
linux$              ##以linux结束
linuxfan.           ##匹配linuxfans等
coo[kl]             ##匹配cool或cook
9[^5689]            ##匹配91,92等,但不匹配95,96,98,99
[0-9]               ##匹配任意一个所有的数字
[a-z]|[A-Z]         ##匹配任意一个所有大小写字母,|属于扩展正则grep -E支持
colou?r             ##匹配color或colour,但是不能匹配colouur
rollno-9+           ##匹配rollno-9、rollno-99,rollno-999,但不匹配rollno-
co*l                ##匹配cl,col,cool,coool等
ma(tri)x            ##匹配matrix
[0-9]{3}            ##匹配任意一个三位数,等于[0-9][0-9][0-9]
[0-9]{2,}           ##匹配任意一个两位数或更多位的数字
[0-9]{2,5}          ##匹配从两位数到五位数之间的任意一个数字
Oct (1st|2nd)       ##匹配Oct 1st或Oct 2nd
a\.b                ##匹配a.b,但不能匹配ajb
[a-z0-9_]+\@[a-z0-9_]+\.[a-z]{2,4}              ##匹配一个邮箱地址
[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}  ##匹配IP地址
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Alan0517

感谢您的鼓励与支持!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值