Java正則表達(dá)式基礎(chǔ)語法詳解
什么是正則表達(dá)式?
1、正則表達(dá)式是檢擦、匹配字符串的表達(dá)式
2、正則表達(dá)式是描述規(guī)則,主流語言都有良好支持
3、字符串校驗(yàn)、查找與替換是正則表達(dá)式主要使用場景
字符范圍匹配:
正則表達(dá)式 | 說明 | 正確 | 錯(cuò)誤 |
---|---|---|---|
A | 精準(zhǔn)匹配單個(gè)字符 | A | a |
x/y | 允許出現(xiàn)的2個(gè)字符 | y | n |
[xyz] | 字符集合,允許出現(xiàn)集合內(nèi)任意單個(gè)字符 | z | c |
[a-z] [A-Z] [0-9] | 字符范圍 | a D 8 | A a A |
[^xyz] [^0-9] | 集合內(nèi)字符不允許出現(xiàn) | 0 A | y 8 |
元字符:
元字符就是指通過一些特殊的表達(dá)形式,單指某一類字符的字符,叫做元字符。
正則表達(dá)式 | 說明 | 正確 | 錯(cuò)誤 |
---|---|---|---|
\d | 匹配任意單個(gè)數(shù)字 | 8 | i |
\D | 匹配\d規(guī)則之外的任意單個(gè)字符 | i | 8 |
\w | 匹配任意單個(gè)字母數(shù)字下劃線 | Y | & |
\W | 匹配\w之外的任意單個(gè)字符 | & | Y |
\s | 匹配單個(gè)空格 | x | |
\n | 匹配單個(gè)換行符 | x | |
. | 匹配任意單個(gè)字符(換行符除外) | - | \r\n |
\. | 特殊字符,只匹配 . | . | 1 |
多次重復(fù)匹配:
正則表達(dá)式 | 說明 | 正確 | 錯(cuò)誤 |
---|---|---|---|
A{3} | 精準(zhǔn)N次匹配 | AAA | AA |
A{3,} | 最少出現(xiàn)N次 | AAA | AA |
\d{3,5} | 約定出現(xiàn)最少次數(shù)與最大次數(shù) | 1234 | 12 |
\d* | 可以出現(xiàn)零次至無限次,相當(dāng)于{0,} | 1234 | – |
\d+ | 最少出現(xiàn)一次,相當(dāng)于{1,} | 12 | |
\d? | 最多出現(xiàn)一次,相當(dāng)于{0,1} | 1 | 12 |
定位匹配:
正則表達(dá)式 | 說明 | 正確 | 錯(cuò)誤 |
---|---|---|---|
^A.* | 頭匹配 | ABC | CBA |
.*A$ | 尾匹配 | CBA | ABC |
^A.*A$ | 全字匹配 | ACCCA | ACCCB |
總結(jié)
本篇文章就到這里了,希望能夠給你帶來幫助,也希望您能夠多多關(guān)注腳本之家的更多內(nèi)容!
相關(guān)文章
springboot導(dǎo)出excel多個(gè)sheet導(dǎo)出的實(shí)現(xiàn)
在Java開發(fā)過程中,合理配置pom.xml文件對項(xiàng)目的管理和構(gòu)建至關(guān)重要,通過添加依賴管理項(xiàng)目所需的庫,簡化了項(xiàng)目構(gòu)建過程,同時(shí),掌握導(dǎo)出excel工具類的使用,可以有效地處理數(shù)據(jù)導(dǎo)出需求,提高工作效率,本文結(jié)合個(gè)人經(jīng)驗(yàn)2024-10-10使用javaweb項(xiàng)目對數(shù)據(jù)庫增、刪、改、查操作的實(shí)現(xiàn)方法
這篇文章主要給大家介紹了關(guān)于使用javaweb項(xiàng)目對數(shù)據(jù)庫增、刪、改、查操作的實(shí)現(xiàn)方法,avaWeb是指使用Java語言進(jìn)行Web應(yīng)用程序開發(fā)的技術(shù),可以利用Java編寫一些動(dòng)態(tài)網(wǎng)頁、交互式網(wǎng)頁、企業(yè)級應(yīng)用程序等,需要的朋友可以參考下2023-07-07基于常用json框架介紹和Jackson返回結(jié)果處理方式
這篇文章主要介紹了基于常用json框架介紹和Jackson返回結(jié)果處理方式,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2021-09-09log4j2動(dòng)態(tài)修改日志級別及拓展性使用詳解
這篇文章主要介紹了log4j2動(dòng)態(tài)修改日志級別及拓展性使用詳解,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2018-11-11idea報(bào)錯(cuò):程序包org.springframework.web.bind.annotation不存在
在用本地的maven倉庫的時(shí)候會(huì)org.springframework.web.bind.annotation不存在的錯(cuò)誤,本文就詳細(xì)的介紹一下解決方法,感興趣的可以了解下2023-08-08Spring Boot 中嵌入式 Servlet 容器自動(dòng)配置原理解析
這篇文章主要介紹了Spring Boot 中嵌入式 Servlet 容器自動(dòng)配置原理解析,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2021-11-11Springboot 使用maven release插件執(zhí)行版本管理及打包操作
maven-release-plugin 可用于構(gòu)建release版本項(xiàng)目,實(shí)現(xiàn)自動(dòng)打tag、遞增版本號、分發(fā)release版本jar包至倉庫,接下來通過本文給大家介紹Springboot 使用maven release插件執(zhí)行版本管理及打包操作,需要的朋友可以參考下2022-03-03使用SpringBoot整合Activiti6工作流的操作方法
這篇文章主要介紹了使用SpringBoot整合Activiti6工作流,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2022-07-07