簡述:正則表達式主要用于文本的搜索,它表示了搜索文本的過濾條件。根據這些條件,對目標文本朱行進行匹配檢查,最后對輸出匹配到符合過濾條件的行。
使用:正確高效的使用正則表達式,需要掌握以下基本知識點
1:語法 grep [OPTION] PATTERN FILE…..
OPTION]:表示搜索的選項。其中
-v:顯示不能被pattern匹配到的行
-i:表示忽略字符大小寫
– o:表示僅僅顯示匹配到的字符串
-A#:顯示匹配到的行以及后幾行
-B#:顯示匹配到的行以及前幾行
-C#:顯示匹配到的行以及前后幾行
PATTERN:表示正則表達式,熟練寫好所需要的正則表達式,需要熟練掌握正則表達式元字符
2 基本正則表達式元字符
一:字符匹配
. :匹配任意單個字符
[]:匹配任意范圍內的單個字符
[^]:匹配指定范圍內的任意單個字符
[:alnum:]:字母和數字
[:alpha:]:字母
[:lower:]:小寫字母
[:power:]:大寫字母
[:digit:]:數字
[:blank:] 空白字符
[:space:] 包含范圍比 blank更廣
二:匹配次數
用在要指定次數的字符后面,用于指定前面的字符要出現的次數
*;;匹配前面的字符任意次,包括0次
.*任意長度的任意字符
\? 匹配前面的字符0次或1次
\+ 匹配前面的字符至少1次
\{n\}匹配前面的字符n次
\{m,n\}匹配前面的字符至少m次至多n次
\{,n\}匹配前面的字符至多n次
\{m,\}匹配前面的字符至少m次
三:位置錨定
^行首
$行尾
\< 詞首
\>詞尾
\<patten\>匹配整個單詞
四:分組
\(\)將一個或多個字符捆綁在一起,當做一個整體進行處理
\(word\)
3 如何熟練使用正則表達式
一:熟練掌握元字符所表示的意義
二:記憶一些常用的表達式,比如說^[[:space:]]*$表示空行 \<word>\ 表示匹配到的某個單詞
三:linux的一些基礎命令的掌握。比如說wc head tail cut sort uniq 和一些常用的查詢命令 。
四:多做練習,整理做題的思路。反過來檢測知識不牢靠的點,后續再及時復習。
原創文章,作者:mapipi,如若轉載,請注明出處:http://www.www58058.com/77492