shell脚本正则表达式

image

声明:
以下内容为个人笔记,内容不完全正确,请谨慎参考。

正则表达式

含义:
正则表达式使用的每个单独字符串来描述、匹配一些列符合语法规则的字符串。在很多文本编辑器里,正则表达式通常被用来检索、替换那些符合某个模式的文本。在Linux中,grep,sed,awk等文本处理工具都支持正则表达式进行模式匹配。

常规匹配
一串不包含特殊字符的正则表达式匹配它自己,例如:
image
常用特殊字符:
1、特殊字符:^
^匹配一行的开头,例如:
image

2、特殊字符:\( \)匹配一行的结尾,例如:
image

2.1
image

例:
image

3、特殊字符:.
.匹配一个任意字符,例1:
image
例2:
image

4、特殊字符:*
不单独使用,它和上一个字符串连接,表示匹配上一个字符0次或多次。例如:
image
4.1
image
例1:
image
例2:
image
例3:
image
5、特殊字符:中括号[]
[]表示匹配某个范围内的一个字符,例如:
[6,8]匹配6或者8
[0-9]匹配一个0-9任意数字
[a-z]匹配任意一个a-z之间的字母
[a-z]
匹配任意长度的字母字符串
例:
image
会匹配rat,rt,rtkit等等所有行。
6、特殊字符:
\表示转义,并不会单独使用。由于所有特殊字符有其特定的匹配模式,当想匹配某一特殊字符本身时(例如,想找出所'$'的行)就非常难找,这时可利用转移字符将特殊字符连用,表示特殊字符本身。
例:
image
拓展:扩展规则
a{2} 表示a出现两次
趣味小栗子:
利用正则匹配手机号:
image
简易写法:
image

posted @ 2024-04-21 16:19  轻棠  阅读(53)  评论(0编辑  收藏  举报