linux常用的正则表达式

来源:互联网 发布:矩阵的奇异值分解方法 编辑:程序博客网 时间:2024/06/05 18:29

^a  表示搜索以a开头的内容(行)。

a$  表示搜索以a结尾的内容。

aa   表示含有aa的内容。

^$    表示空行。

.       代表任意一个字符。

\       转义,使有特殊意义的字符是本身。   \.  代表  .

*      重复0个或多个前面一个字符。(通配符里面代表所有)。

.*     表示所有的字符。

[0123]  代表0或1或2或3 等价[0-3]

[^0123] 代表非0、1、2、3  

{n,m}  重复n到m次。{n,} 至少n次   {n} n次    {0,m} 最多m次-------没有{,m}

RE字符

a+   表示一个a或者多个a

a?   表示0个a或者一个a   

|     或者的意思  一般是用在单引号''或者双引号""里,与[]里面不一样

grep -E 'a|b' test.txt    这是在test.txt文件中找到a或者b的行

grep -E '[a|b]' test.txt    这是在test.txt文件中找到a或者b或者|的行

()   将字符串连接到一起

(abc)   将abc看成一个

---------------------------------------------------------------------------------------------------------

较常用的特殊符号:(其实都可以用上面的方式进行表示)

[:alnum:]=[0-9A-Za-z]            -------[^[:alnum:]]  这是取反

[:alpha:]=[A-Za-z]

[:digit:]=[0-9]

[:lower:]=[a-z]

[:upper:]=[A-Z]