linux正则表达式

Posted 狼太白

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了linux正则表达式相关的知识,希望对你有一定的参考价值。

字符

范围内字符单个字符:  [ ] [a-z]

反向字符^:  [^ 0-9]不是数字

任意字符:\' . \'

头尾字符: ^ $, ^root //注意与[^]区别,空行表示^$

元字符和重复设定:

 

 

字符组合

任意字符串的表示: . *

.代表任意一个字符,*代表多个字符,正则表达式就是最大的范围,这需要按照自己的想要的结果去加条件变小范围。

逻辑表示

| 逻辑或

grep \'bin/\\(false\\|true\\)\' passwd

例子:

在passwd文件中匹配2-3位数字

这里面含有数字[0-9],重复{,},分隔符/b /b

案例2:

匹配15位或18位身份证号(支持带X的)

因为身份证号首位不能为0,最后一位可以带有X的,中间就有13-16位重复,^$代表首和尾

grep \'^[1-9]\\([0-9]\\{13\\}|[0-9]\\{16\\}\\)[0-9xX]$\'  文件

案例3:

匹配密码(由字母,数字,下划线组成)

grep \' ^\\w\\+$\'  文件

总结图:

 

以上是关于linux正则表达式的主要内容,如果未能解决你的问题,请参考以下文章

Linux正则表达式教程:Grep Regex示例

Linux正则表达式及grep命令

linux-正则表达式

linux正则表达式

linux 中 ^[^abc] 正则表达式啥意思

Linux 基础正则表达式