正規表示式

2022-09-09 11:45:07 字數 1881 閱讀 7882

通常用於判斷語句中,用來檢查某一字串是否滿足某一格式。

正規表示式是由普通字元與元字元組成。

普通字元包括大小寫字母、數字、標點符號及一些其他符號。

元字元是指在正規表示式中具有特殊意義的專用字元,可以用來規定其前導字元(即位於元字元前面的字元)在目標物件中的出現模式。

基礎正規表示式常見元字元: (支援的 工具: grep、 egrep、 sed、awk)。

\轉義字元,用於取消特殊符號的含義,例: \!、\n、\$等

^匹配字串開始的位置,例: ^a、 ^the、 ^#、^[a-z]

$匹配字串結束的位置,例: word$、 ^$匹配空行

.匹配除\n之外的任意的乙個字元,例: go.d、g..d

*匹配前面 子表示式0次或者多次,例: goo*d、go.*d

[list]

匹配list列表中的乙個字元,例: go[ola]d, [abc]、 [a-z]、 [a-z0-9]、 [0-9]匹配任意一位數字

[^list]

匹配任意非list列表中的乙個字元,例: [^0-9]、[^a-z0-9]、 [^a-z]匹配任意一位非小寫字母

\ 匹配前面的子表示式n次,例: go\d、 '[0-9]\'匹配兩位數字

\匹配前面的子表示式不少於n次,例: go\d、 '[0-9]\'匹配兩位及兩位以上數字

\匹配前面的子表示式n到m次,例: go\d、 '[0-9]\'匹配兩位到三位數字

注: egrep、 awk使用、、 匹配時「{}"前不用加「\」。

例:

擴充套件正規表示式元字元

支援的工具:(egrep、awk)。

+匹配前面 子表示式1次以上,例: go+d, 將匹配至少乙個o,如god、good、goood等

?匹配前面 子表示式0次或者1次,例: go?d,將匹配gd或god

()將括號中的字串作為乙個整體,例: g(oo)+d, 將匹配oo整體1次以上,如good、gooood等

|以或的方式匹配字條串,例: g(oo|la)d, 將匹配good或者glad

匹配前面的子表示式n次,等同於 \

匹配前面的子表示式至少n次,等同於 \

匹配前面的子表示式n次到 m 次,等同於 \

\表示匹配單詞開頭 例子 \

word\>

表示匹配單詞結尾 例子 g\> 匹配包含以 g 為結尾的單詞的行

\b單詞邊界。 例子: \bgood\b 只能匹配類似與 "yes yes " 而不是 「yesyes」

例:

正規表示式 正規表示式 總結

非負整數 d 正整數 0 9 1 9 0 9 非正整數 d 0 負整數 0 9 1 9 0 9 整數 d 非負浮點數 d d 正浮點數 0 9 0 9 1 9 0 9 0 9 1 9 0 9 0 9 0 9 1 9 0 9 非正浮點數 d d 0 0 負浮點數 正浮點數正則式 英文本串 a za z...

正規表示式 表示式

網域名稱 a za z0 9 a za z0 9 a za z0 9 a za z0 9 interneturl a za z s 或 http w w w 手機號碼 13 0 9 14 5 7 15 0 1 2 3 5 6 7 8 9 18 0 1 2 3 5 6 7 8 9 d 號碼 x x x...

Linux正規表示式 編寫正規表示式

為了所有實用化的用途,你可以通過使用程式產生正確的結果。然而,並不意味著程式總是如你所願的那樣正確地工作。多數情況下,如果程式不能產生想要的輸出,可以斷定真正的問題 排除輸入或語法錯誤 在於如何描述想要的東西。換句話說,應該考慮糾正問題的地方是描述想要的結果的表示式。表示式不完整或者公式表示得不正確...