溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

Linux命令中正則表達(dá)式的示例分析

發(fā)布時(shí)間:2021-07-01 09:43:14 來源:億速云 閱讀:94 作者:小新 欄目:開發(fā)技術(shù)

小編給大家分享一下Linux命令中正則表達(dá)式的示例分析,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!

命令中的正則表達(dá)式

 如果要在命令輸出或文本中篩選內(nèi)容時(shí)使用模糊查找,就需要使用正則表達(dá)式。正則表達(dá)式是一套由多個(gè)元字符組成的模糊查找模式,使用正則表達(dá)式可以快速查找和定位文本中指定的內(nèi)容。

 1、單字符匹配符. 

 正則表達(dá)式主要由一些元字符和匹配模式組成 

單字符匹配符可以匹配任意單個(gè)字符,這個(gè)字符的功能和文件名匹配符中的?功能相同

 使用正則表達(dá)式查找文本,首先需要使用元字符組成一個(gè)查找模式

 (1)使用查找模式時(shí),通常將其放入兩個(gè)斜杠//中,然后再放入命令,例如要在一個(gè)文本中查找匹配模式/.i...../,可能選項(xiàng)就有:只要小寫字母沒有出現(xiàn)在行首,或行尾的最后有5個(gè)字符都能匹配 

 2、單字符或字符串重復(fù)匹配符* 

 用來匹配單個(gè)字符或者一個(gè)字符串序列的一次或者多次重復(fù)出現(xiàn) 

 3、行首匹配符^

  用于在匹配中指示行首位置字符串或者模式,使用時(shí)需要將行首匹配符放在要匹配的字符串或模式的前面 

例如對命令ls -1 使用行首匹配/^1/,結(jié)果都是以1開頭的

 4、行尾匹配符$ 

 用于在文本的每一行的行尾匹配字符串或模式,使用時(shí)將行尾匹配符放在字符串或模式后面

 例如在文本中匹配所有行尾是love的行 

  /love$/

 5、反斜杠屏蔽符\ 

 該符用來屏蔽一些特殊字符的特殊含義,常見的特殊字符可能是引用符號,注釋符號,通配符和邏輯運(yùn)算符等,下面列舉一些特殊的符號

  注釋、分隔符號:#、;等  

引用符號:$、``、""等

  元字符:.、*、^、$、?、[]、\等 

  邏輯運(yùn)算符或操作符:||、&&等

 在命令中使用這些字符時(shí),都要使用反斜杠將其特殊含義屏蔽 

 例如使用乘法符號*做乘法運(yùn)算,就要用反斜杠將其特殊含義屏蔽在做使用 

  # expr 256 \* 256 

 6、范圍匹配符[]和排除范圍匹配符[^]

 與文件名通配符中的范圍匹配符用法基本相同  

    (1)匹配單詞love和Love:

  /[L]ove/ 

     (2)不匹配所有的字母:

  [^a-z]

 7、詞首、詞尾匹配符 \< 和 \> 

 用于在單詞開頭和單詞結(jié)尾匹配特定的字符或模式

  (1)例如要匹配以disc 為詞首的文本,可以使用 

  /\<disc/ 

    (2)要匹配以ment為詞尾的文本,可以使用:  

  /ment\>/ 

 8、重復(fù)次數(shù)匹配符"x\{\}"

    可以全精確匹配字符或字符串連續(xù)出現(xiàn)的次數(shù)或次數(shù)范圍 

(1)要匹配字母m出現(xiàn)次數(shù)為5次的文本,可以使用:  

   /m\{5\}/ 

  (2)要匹配字母m出現(xiàn)次數(shù)至少5次的文本,可以使用:  

   /m\{5,\}/  

  (3)匹配字母m出現(xiàn)次數(shù)在5至10次的文本,可以使用:  

   /m\{5,10\}/

 9、組合并使用正則表達(dá)式

 (1)在查找和篩選信息時(shí),有時(shí)需要去除文本中的空行,由于空行沒有任 何字符,可以使用行首,行尾匹配符匹配空行 

  /^$/ 

 (2)有時(shí)一些文本為了看上去更加美觀,會使用一種字符填充整行,可以使 用以下模式匹配這些行: 

  /^.*$/ 

 (3)匹配以the或The開頭的所有行

  /^[tT]he/

 (4)排除以the和The開頭的所有行 

  /^[^Tt]he/ 

 (5)匹配一個(gè)IP地址:

  /[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}/

 (6)匹配一個(gè)6個(gè)字母組成的字符串,前兩個(gè)字符是字母,中間兩個(gè)字符是22 且最后兩個(gè)字符是小寫字母: 

  [a-z]\{2\}22[a-z]\{2\} 

 (7)要精確匹配單詞love:

  /\<love\>/

以上是“Linux命令中正則表達(dá)式的示例分析”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對大家有所幫助,如果還想學(xué)習(xí)更多知識,歡迎關(guān)注億速云行業(yè)資訊頻道!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI