Linux-擴展正規表示法

8.正規表示法

本章同步視頻:https://edu.51cto.com/sd/e4874

8.3 延伸正規表示法

RE 字符express

意義與範例ide

+spa

意義:重複『一個或一個以上』的前一個 RE 字符orm

範例:搜尋   (god) (good) (goood)... 等等的字符串。那個 o+ 表明『一個以上的 o 』因此,底下的執行成果會將第 1,   9, 13 行列出來。視頻

egrep -n 'go+d' regular_express.txt字符串

?get

意義:『零個或一個』的前一個 RE 字符同步

範例:搜尋 (gd)   (god) 這兩個字符串。那個 o? 表明『空的或 1 o 』因此,上面的執行成果會將第 13,   14 行列出來。有沒有發現到,這兩個案例( 'go+d' 'go?d' )的結果集合與   'go*d' 相同?想一想看,這是爲何喔! ^_^it

egrep -n 'go?d' regular_express.txtio

|

意義:用或( or   )的方式找出數個字符串

範例:搜尋 gd good 這兩個字符串,注意,是『或』!因此,第 1,9,14 這三行均可以被打印出來喔!那若是還想要找出 dog 呢?

egrep -n 'gd|good' regular_express.txt

egrep -n 'gd|good|dog' regular_express.txt

()

意義:找出『羣組』字符串

範例:搜尋   (glad) (good) 這兩個字符串,由於 g d 是重複的,因此,我就能夠將 la oo 列於 ( ) 當中,並以 | 來分隔開來,就能夠啦!

egrep -n 'g(la|oo)d' regular_express.txt

()+

意義:多個重複羣組的判別

範例:將『AxyzxyzxyzxyzC』用 echo   叫出,而後再使用以下的方法搜尋一下!

echo 'AxyzxyzxyzxyzC' | egrep 'A(xyz)+C'

上面的例子意思是說,我要找開頭是 A 結尾是 C ,中間有一個以上的"xyz"字符串的意思~

相關文章
相關標籤/搜索