正規表示式的學習

2021-09-02 02:21:50 字數 1771 閱讀 7842

正規表示式:處理字串的方法,以行為單位處理字串,其通過一些特殊符號的輔助,可以使使用者輕易的進行查詢、刪除、替換某特定字串的處理程式。

支援正規表示式表示法的工具程式:grep、vi、awk、sed

正規表示式分類:1)基礎正規表示式;2)擴充套件正規表示式

而在學習正規表示式之前,首先學會工具程式grep的用法: 

grep [-acinv] [--color=auto] '查詢字串' filename

引數:-a:將binary檔案以text檔案的方式查詢資料

-c:計算找到「查詢字串」的次數

-i:忽略大小寫

-n:輸出行號

-v:反向顯示

--color=auto:將找到的關鍵部分加上顏色顯示

正規表示式則是操作上述grep中「查詢字串」選項

以linux中regular_express.txt為例

1)行首與行尾字元:標註以什麼開始,以什麼結束^和$

含義:找出以th開頭的行數,並使用grep的-i選項,忽略大小寫

含義:找出以"."結尾的行,其中.有特殊含義,需要用轉移字元\進行轉義

含義:找出空行

2)利用中括號查詢集合字元

含義:查詢包含goo或foo的行

含義:查詢不包含小寫字母goo或foo的行,此處在中的符號^與行首識別符號含義不同,此處含義為「反向選擇」,在之外則代表定位在行首的意義

含義:查詢包含任意數字的行

3)任意乙個字元「.」與重複字元「*」

「.」:代表一定有乙個任意字元的意思

「*」:代表重複前乙個字元0-無窮多次的意思

含義:即找出包含g??d字串,其中中間兩個點代表任意乙個字元

含義:找出o出現0次或多次的行

含義:找出o出現0次或多次的行,但由於前面多出兩個o,所以匹配到的行o至少出現兩次

含義:gg之間出現任意字元一次,其中可以匹配任意字元

4)限定連續字元範圍:,其中{}需要進行轉義

含義:匹配出現2-5次o的行

含義:匹配出現》=2次o的行

正規表示式學習

概念 正規表示式,就是用某種模式去匹配一類字串的乙個公式。基礎 下表列出了所有的元字元和對它們的乙個簡短的描述。簡單例子 vi 命令作用 s g 把乙個或者多個空格替換為乙個空格 s 去掉行尾的所有空格 s 在每一行頭上加入乙個空格 s 0 9 0 9 去掉行首的所有數字字元 s b aeio g ...

正規表示式學習

1.元字元 1 匹配任何單個字元 2 匹配括號中的任何乙個字元 可以再括號中使用連字元 來指定子都的區間來簡化表示,如a 0123456789 c等價於a 0 9 c 3 將 之間括起來的表示式定義為 組 4 將兩個匹配條件進行邏輯 或 運算 z f ood則匹配 zood 或 food 5 匹配0...

正規表示式學習

只是點皮毛,先湊合用著了,順便鄙視一下sqlserver,居然不支援正則。b 元字元,代表著單詞的開頭或結尾,也就是單詞的分界處。d 數字 s 任意的空白符,包括空格,製表符 tab 換行符,中文全形空格等 w 字母或數字或下劃線或漢字等 匹配字串的開始 匹配字串的結束 轉義符 除換行符以外的任意字...