? ?
java regex是什么?讓我們一起來(lái)了解一下吧!
正則表達(dá)式是一個(gè)強(qiáng)大的字符串處理工具,可以對(duì)字符串進(jìn)行查找、提取、分割、替換等操作,是一種可以用于模式匹配和替換的規(guī)范。一個(gè)正則表達(dá)式就是由普通的字符(如字符 a~z)以及特殊字符(元字符)組成的文字模式,它用以描述在查找文字主體時(shí)待匹配的一個(gè)或多個(gè)字符串。
java regex是正則表達(dá)式(regular expression),又稱正規(guī)表示法、常規(guī)表示法,在代碼中常簡(jiǎn)寫為 regex、regexp 或 RE,是根據(jù)字符串集合內(nèi)每個(gè)字符串共享的共同特性來(lái)描述字符串集合的一種途徑。正則表達(dá)式可以用于搜索、編輯或者處理文本和數(shù)據(jù)。
?
正則表達(dá)式常用符號(hào)介紹
1、[ ] 表示匹配括號(hào)中的任意一個(gè)字符。比如:
? ? ? [a - z ]:表示匹配任意一個(gè)小寫字母。
2、^字符:如果用在[ ]內(nèi)表示非;如果^放在了整個(gè)表達(dá)式的開(kāi)頭,表示強(qiáng)制以當(dāng)前字符開(kāi)頭。比如:
? ? [^a-z]:表示除了小寫字母以外的字符;^[a-z]則表示以小寫字母開(kāi)頭。
3、預(yù)定義符號(hào):
.:表示任意字符;
\w:表示單詞字符?[a-zA-Z_0-9]?
\d:表示數(shù)字[0-9];
\s:表示空白字符:[ \t\n\x0B\f\r];
\D:表示非數(shù)字:?[^0-9]
\W:表示非單詞字符:[^\w]
\S:表示非空白字符:[^\s]
實(shí)戰(zhàn)演練,具體步驟如下所示:
public?static?void?main(String[]?args)?{ ????????String?str?=?"\\\\"; ????????//1.?字符串是由3個(gè)字符組成:第一個(gè)字符只能從a/b/c,第二個(gè)字符只能由r/s/t ????????//?第三個(gè)字符是數(shù)字 ????????//?[xyz]?-?表示可以是x/y/z中的任何一個(gè) ????????//?[a-b]?-?按照碼表從a開(kāi)始一直找到b ????????//System.out.println(str.matches("[abc][rst][0-9]")); ? ????????//?1.判斷一個(gè)字符串是否是由一個(gè)小寫字母組成 ????????//?System.out.println(str.matches("[a-z]")); ???????? ????????//?2.?[^abc]表示除了a/b/c ????????//?System.out.println(str.matches("[^a-zA-Z]")); ???????? ????????//3.?字符串由三個(gè)組成,第一個(gè)是字母,第二個(gè)是數(shù)字, ????????//“.”表示任意一個(gè)字符 ????????//System.out.println(str.matches("[a-zA-Z][0-9].")); ???????? ????????//4.判斷字符串是否只有一個(gè)字符 ????????//System.out.println(str.matches(".")); ???????? ????????//匹配. ????????//\\.?經(jīng)過(guò)java編譯就變成了\.,正則再轉(zhuǎn)義成.?表示. ????????//System.out.println(str.matches("\\.")); ???????? ????????//\\\\java編譯\\;\\正則編譯后\ ????????//?\\\\?->?\\?->?\ ????????//System.out.println(str.matches("\\\\")); ????????System.out.println(str.matches("\\w")); ????????System.out.println(str); ????}
以上就是小編今天的分享了,希望可以幫助到大家。