C語言中文網 目錄

Java正則表達式

正則表達式是一種可以用于模式匹配和替換的規范,一個正則表達式就是由普通的字符(如字符 a~z)以及特殊字符(元字符)組成的文字模式,它用以描述在查找文字主體時待匹配的一個或多個字符串。

正則表達式作為一個模板,將某個字符模式與所搜索的字符串進行匹配。本文簡單了解一下如何使用正則表達式來操作字符串。

元字符

正則表達式中含有一些具有特殊意義的字符,這些特殊字符稱為正則表達式的元字符。例如“\\d”表示 0~9 的任何一個數字,“\d”就是元字符。正則表達式中有多種元字符,常用的元字符如表 1 所示。

表1 正則表達式常用的元字符
元字符 正則表達式的寫法 說明
. "." 代表任意一個字符
\d "\\d" 代表 0~9 的任何一個數字
\D "\\D" 代表任何一個非數字字符
\s "\\s" 代表空白字符,如"\t’’和’’\n”
\S "\\S" 代表非空白字符
\W "\\W" 代表不可用于標識符的字符
\p {Lower} \\p {Lower} 代表小寫字母 {a~z}
\p {Upper} \\p {Upper} 代表大寫字母 {A~Z}
\p {ASCII} \\p {ASCII} ASCII 字符
\p {Alpha} \\p {Alpha} 字母字符
\p {Digit} \\p {Digit} 十進制數字,即 [0~9]
\p {Alnum} \\p {Alnum} 數字或字母字符
\p {Punct} \\p {Punct} 標點符號:!"#$%&'()*+,-./:;<=>?@[\]^_`{|}~ 
\p {Graph} \\p {Graph} 可見字符:[\p{Alnum}\p{Punct}]
\p {Print} \\p {Print} 可打印字符:[\p{Graph}\x20]
\p {Blank} \\p {Blank} 空格或制表符:[\t]
\p {Cntrl} \\p {Cntrl} 控制字符:[\x00-\x1F\x7F]

在正則表達式中,可以使用方括號括起來若干個字符來表示一個元字符。這個元字符可以代表方括號中的任何一個字符,例如字符串“reg="a4"” “reg="b4"”和“reg="c4"”都是與“reg="[abc]4"”匹配的字符串。

注意:在正則表達式中,"."代表任何一個字符,因此如果想在正則表達式中使用普通意義的點字符,那么必須使用轉義字符。

限定符

正則表達式中允許使用限定修飾符來限定元字符出現的次數,例如,“B*”表示 B 字母可以在字符串中出現零次或多次。正則表達式中可以使用多種限定符,如表 2 所示。
表2 正則表達式常用的限定符
限定符 ? * + {n} {n,} {n,m}
說明 零次或一次 零次或多次 一次或多次 正好出現 n 次 至少出現 n 次 出現 n~m 次

精美而實用的網站,提供C語言C++STLLinuxShellJavaGo語言等教程,以及socketGCCviSwing設計模式JSP等專題。

Copyright ?2011-2018 biancheng.net, 陜ICP備15000209號

底部Logo