正則表達式

java.util.regex中提供了正則表達式相關API。

正則表達式是什么?正則表達式描述了一組具有共同特征的字符串。

三個重要的類:

  1. Pattern
    經過編譯的正則表達式,它沒有公開的構造器,調用靜態(tài)方法compile返回一個Pattern對象,compile方法接受一個正則表達式的字符串
  2. Matcher
    引擎,解釋Pattern對象,執(zhí)行匹配操作,不提供公開構造方法,調用Pattern對象的matcher方法返回一個Matcher對象
  3. PatternSyntaxException
    不受檢查的異常對象,表示正則表達式有語法錯誤

元字符

元字符有< > ( ) [ ] { } + - * \\ ^ = $ ! ? | .

我的記憶方法是將元字符分為兩部分,括號一串沒有規(guī)律的字符。
對于沒有規(guī)律的字符串,我的口訣心法是:加減乘除冪運算,一共等于十萬美元,我很驚訝,很疑惑,或許該補上一個小數點??傊约呵宄蚈K~O(∩_∩)O

將元字符作為普通字符使用的方式:

  1. 在元字符前使用反斜杠
  2. 在元字符前后分別使用\\Q\\E,表示引用的開始和結束

分組

分組,是指用方括號包含的一組字符,用這些字符去匹配輸入字符串中的一個單一字符

  • 簡單分組

    在方括號中并排列舉一些字符,比如[abc],匹配字母a、b或c中的任意一個。

    舉個列子,正則表達式[bcr]at將匹配batcatrat,但不能匹配hat。這個正則表達式的意義是:以b、c或r字母開始,且緊跟at的字符串

未完待續(xù)……

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內容

友情鏈接更多精彩內容