正則表達式是一類用于匹配文本的表達方式,常用于grep命令中表達檢索條件。其實就是相當于你在用百度搜索時規(guī)定一些高級要求,例如你想找百度一個叫做詹姆斯的人的照片,你會發(fā)現(xiàn)出來一大堆騎士隊的詹姆斯,這時候你就需要高級要求:搜索除了勒布朗之外的詹姆斯。而正則表達式就是用在這里的。
學習正則表達式簡直就是非人的工作,因為它根本就不是按照正常人的思維工作的,所以要有心理準備。
我在剛開始學習時看了很多正則表達式的用法,后來發(fā)現(xiàn),原來在不同的環(huán)境中正則表達式是不同的,這其中就體現(xiàn)在某些詞需不需要轉義符/以及元字符集,所以在這里將bash中用于grep的正則表達式相關內容整合一下.
文本搜索工具grep基本用法
功能:輸入文件的每一行中查找字符串。
基本用法:
grep [-acinv] [–color=auto] [-A n] [-B n] ‘搜尋字符串' 文件名
參數(shù)說明:
-a:將二進制文檔以文本方式處理
-c:顯示匹配次數(shù)
-i:忽略大小寫差異
-n:在行首顯示行號
-A:After的意思,顯示匹配字符串后n行的數(shù)據(jù)
-B:before的意思,顯示匹配字符串前n行的數(shù)據(jù)
-v:顯示沒有匹配行-A:After的意思,顯示匹配部分之后n行-B:before的意思,顯示匹配部分之前n行
–color:以特定顏色高亮顯示匹配關鍵字
文本搜索工具grep正則表達式元字符集
^
錨定行的開始 如:'^grep'匹配所有以grep開頭的行。
$
錨定行的結束 如:'grep$'匹配所有以grep結尾的行。
.
匹配一個非換行符的字符 如:'gr.p'匹配gr后接一個任意字符,然后是p。
*
匹配零個或多個先前字符 如:'grep'匹配所有一個或多個空格后緊跟grep的行。 .一起用代表任意字符。
[]
匹配一個指定范圍內的字符,如'[Gg]rep'匹配Grep和grep。
[^]
匹配一個不在指定范圍內的字符,如:'[^A-FH-Z]rep'匹配不包含A-R和T-Z的一個字母開頭,緊跟rep的行。
(..)
標記匹配字符,如'(love)',love被標記為1。
/<
錨定單詞的開始,如:'/
以上所述是小編給大家介紹的bash 中的正則表達式,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對VEVB武林網(wǎng)網(wǎng)站的支持!
新聞熱點
疑難解答