linux 中的正則表達式用法小結

首先:在linux中 ,正則表達式是針對文件內容而言的。查用在shell的grep,sed ,awk等相關命令之中。

正則表達式的元字符:

.  : 表示任意字符

字符次數錨定:

* : 表示* 之前的字符或模式出現任意次,其中包括0次

?:   表示?之前的字符出現0次或一次,需要注意的是,在linux中需要是\?。

\{m,n\}:表示其前面的字符或模式出現至少m次,至多n次

\{m,\}: 表示其前面的字符至少出現m次

\{0,n\}:表示其前面的字符至多出現n次

位置錨定:

^: 表示以其後面的字符開頭

$:表示以其前面的字符結尾

^$: 表示匹配空白行

匹配單詞:(需要注意單詞的含義。root是單詞,r..t 在linuxshell中不認爲是單詞)

\<word : 表示匹配word開頭的單詞。

word\>:   表示匹配word結尾的單詞

\<word\>: 表示匹配完整的單詞word

範圍匹配:

[0-9]:表示匹配數字

[a-z]:表示匹配小寫字母

[A-Z]:表示匹配大寫字母

[[:punct:]]:表示匹配標點符號

[[:space:]]:表示匹配空白字符

[[:lower:]]: 表示匹配小寫字母

[[:upper:]]:表示匹配大寫字母

[[:alpha:]]:表示匹配字母,不區分大小寫字母

[[:digit:]]:表示匹配數字

[[:alnum:]]:表示匹配數字字母

需要注意的是:範圍匹配表示可以匹配範圍中的一個字符。同時支持取反匹配。[^[::]]





發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章