2019-04-17LInux运维第十六天日记总结

正则表达式

不同的符号有不同的含义,方便我们在文件中查找/过滤内容
正则表达式 Regular Expression 简称RE

正则表达式的分类

基础正则:Basic Regular Expression 简称BRE
扩展正则:Extended Regular Expression 简称ERE

BRE和ERE的区别

符号不同
支持的命令不同

通配符与正则的区别

通配符:方便我们进行查找文件,linux下大部分命令都支持
正则: 方便我们进行过滤(在文件中找内容),linux三剑客或开发语言支持

使用正则的一些注意事项

*注意中文符号
*给grep egrep加上颜色(在centos7下系统自动配置完成,在centos6下要自己手动添加)

基础正则

^ 表示以什么开头

$ 表示以什么结尾

注:cat命令参数-A可以显示文件中所有隐藏符号,目前知道在每一行的结尾加上$

^$ 表示空行,这一行中什么都没有

. 表示任意1个字符 (不会匹配出空行)
注:grep命令参数-o显示grep命令每次匹配出了什么内容(显示grep的执行过程)

\ 转义字符,去掉符号原有的特殊意义

转义字符系列

常用 \n(回车) \r(tab键,是一个字符,在linux下等于8个空格)
注:echo命令参数-e让echo命令支持转义字符系列
参数-n不输出每行结尾的回车

星号* 表示前1个字符连续出现0次或0次以上

.* 表示所有,任意字符
具有贪婪特性,能匹配多少字符就匹配多少字符
在正则表达式,表示所有(.*)或连续出现的时候,会产生贪婪性

[] 中括号,相当于一个字符,里面的每个字符都会匹配一遍(特点,不会过滤空行)
[a-z] 表示所有小写字母
[A-Z] 表示所有大写字母
[a-ZA-Z]=[a-Z] 表示所有字母(不分大小写)
[0-9] 表示所有数字
[0-Z] 表示所有数字大小写字母
[^] 表示取反

扩展正则

+ 前1个字符连续出现1次或多次(一般与[]一起使用)

| 或者

() 被括起来的内容相当于一个整体或用来表示后向引用(反向引用)

{} 连续出现
b{m,n} 前1个字符(b)连续出现至少m次,最多出现n次
b{m} 前1个字符连续出现n次
b{m,} 前1个字符连续出现至少m次
b{,n} 前1个字符连续最多出现n次

? 前1个字符出现0次或1次

你可能感兴趣的:(2019-04-17LInux运维第十六天日记总结)