Java中正則表達(dá)式的語(yǔ)法以及matches方法的使用方法
正則表達(dá)式的語(yǔ)法
注意事項(xiàng)
在 Java 中,\\ 表示:我要插入一個(gè)反斜線,從而使其后的字符具有特殊的意義。在 Java 中正則表達(dá)式中則需要有兩個(gè)反斜杠才能被解析為轉(zhuǎn)義作用??梢院?jiǎn)單的理解在 Java 的正則表達(dá)式中,兩個(gè) \\ 代表其他語(yǔ)言中的一個(gè) \,所以表示一位數(shù)字的正則表達(dá)式是 \\d,而表示一個(gè)普通的反斜杠是 \\。
字符
1.預(yù)定義字符類(lèi)
●.表示任何字符\.進(jìn)行轉(zhuǎn)義
●\d數(shù)字: [0-9]
●[
^ ]
:用于定義反向字符類(lèi)。
●\D非數(shù)字[^ 0-9]
●\w單詞字符: [a-zA-Z. _0-9] (. _是下劃線)
●\W非單詞字符: [^ \w]
2.字符類(lèi)
●[abc]a、b、或c .
●[^abc]任何字符,除了a、 b、或c
●[a-zA-Z] a到z或A到Z, 兩頭的字母包括在內(nèi)(范圍) 簡(jiǎn)寫(xiě)[A-z]
3.Greedy數(shù)量詞
●X? X,一次或一次也沒(méi)有
XX,零次或多次
●X+X,一次或多次
●X{n}X, 恰好n次
●X{n,}X, 至少n次
●X{n,m}X, 至少n次,但是不超過(guò)m次n-m次
matches方法
在Java中,matches()
方法是一個(gè)字符串方法,用于檢查該字符串是否與給定的正則表達(dá)式匹配。
語(yǔ)法
public boolean matches(String str)
參數(shù)
str為匹配字符串的正則表達(dá)式
返回值
這個(gè)方法返回一個(gè)布爾值,如果字符串與正則表達(dá)式匹配,那么返回true,否則返回false。
實(shí)例
實(shí)例1
public class Main { public static void main(String[] args) { String email = "example@example.com"; boolean isValid = email.matches("[\\w-]+(\\.[\\w-]+)*@[\\w-]+(\\.[\\w-]+)+"); System.out.println("郵箱地址是否有效:" + isValid); } }
正則表達(dá)式解析:
[\\w-]+
:匹配一個(gè)或多個(gè)字母、數(shù)字、下劃線或連字符。(\\.[\\w-]+)*
:匹配0個(gè)或多個(gè)以點(diǎn)號(hào)開(kāi)頭,后面跟一個(gè)或多個(gè)字母、數(shù)字、下劃線或連字符的組合。@
:匹配字符"@"。[\\w-]+
:匹配一個(gè)或多個(gè)字母、數(shù)字、下劃線或連字符。(\\.[\\w-]+)+
:匹配一個(gè)或多個(gè)以點(diǎn)號(hào)開(kāi)頭,后面跟一個(gè)或多個(gè)字母、數(shù)字、下劃線或連字符的組合。
實(shí)例2
public class Main { public static void main(String[] args) { String phoneNumber = "13800138000"; boolean isValid = phoneNumber.matches("1[3-9]\\d{9}"); System.out.println("手機(jī)號(hào)碼是否有效:" + isValid); } }
正則表達(dá)式解析:
1
:匹配字符"1"。[3-9]
:匹配數(shù)字3到9之間的任意一個(gè)數(shù)字。\\d{9}
:匹配9個(gè)數(shù)字。
總結(jié)
到此這篇關(guān)于Java中正則表達(dá)式的語(yǔ)法以及matches方法使用的文章就介紹到這了,更多相關(guān)Java正則語(yǔ)法及matches方法內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
SpringBoot+Redis執(zhí)行l(wèi)ua腳本的方法步驟
這篇文章主要介紹了SpringBoot+Redis執(zhí)行l(wèi)ua腳本的方法步驟,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-11-11Java如何按16進(jìn)制發(fā)送和接收TCP指令
這篇文章主要介紹了Java如何按16進(jìn)制發(fā)送和接收TCP指令問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-09-09教你在Spring Boot微服務(wù)中集成gRPC通訊的方法
這篇文章主要介紹了教你在Spring Boot微服務(wù)中集成gRPC通訊的方法,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2021-09-09Java微信二次開(kāi)發(fā)(三) Java微信各類(lèi)型消息封裝
這篇文章主要為大家詳細(xì)介紹了Java微信二次開(kāi)發(fā)第三篇,Java微信各類(lèi)型消息封裝,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-04-04Springboot集成graylog及配置過(guò)程解析
這篇文章主要介紹了Springboot集成graylog及配置過(guò)程解析,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-12-12SpringBoot接口調(diào)用之后報(bào)404問(wèn)題的解決方案
這篇文章主要介紹了SpringBoot接口調(diào)用之后報(bào)404問(wèn)題的解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。2021-06-06Java實(shí)現(xiàn)上傳文件到服務(wù)器的示例代碼
這篇文章主要為大家詳細(xì)介紹了如何使用Java實(shí)現(xiàn)上傳文件到服務(wù)器,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下2024-04-04