1. 程式人生 > >linux學習第二周;正則表達式

linux學習第二周;正則表達式

gpo 利用 pos 引號 擴展正則 inux 學習 分組 bsp

字符匹配: . # 匹配任意單個字符 [] # 匹配指定範圍內的任意單個字符 [^] # 匹配指定範圍外的任意單個字符 等 . /*/.* # 不需要在字符串上加引號; 例如:go.*gle 匹配次數: * # 匹配前面的字符任意次,包括0次 .* # 任意長度的任意字符 以下用法都需要在字符串上加雙引號; 例如:"go\{5\}gle" \? # 匹配其前面的字符0或1次 \+ # 匹配其前面的字符至少1次 \{n\} # 匹配前面的字符n次 \{m,n\} # 匹配前面的字符至少m次,至多n次 \{,n\} # 匹配前面的字符至多n次 \{n,\} # 匹配前面的字符至少n次 位置錨定: ^ # 行首錨定,用於模式的最左側 $ # 行尾錨定,用於模式的最右側 例子:^$ 行首加行為表示空行 (只有回車) ^[[:space:]]*$ 空白行 (有空格有回車) ^PATTERN$ # 用於模式匹配整行 \< 或 \b # 詞首錨定,用於單詞模式的左側 \> 或 \b # 詞尾錨定;用於單詞模式的右側 \<PATTERN\> # 匹配整個單詞 分組: \(root\) # root可以是其他表示字符串的整體 擴展正則表達式:與正則表達式相比不用加斜線 例如:取所有ip相關的地址 正則表達式:ifconfig | grep -o "[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}" 擴展正則表達式:ifconfig | grep -o "[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}" # \.表示轉義. 斜線不能去掉,其余斜線均可去除 正則表達式:ifconfig|grep -o "\([0-9]\{1,3\}\.\)\{3\}[0-9]\{1,3\}"(利用正則表達式分組功能) 擴展正則表達式:ifconfig|grep -o "([0-9]{1,3}\.){3}[0-9]{1,3}"(利用正則表達式分組功能)

linux學習第二周;正則表達式