利用正則表達式分割字符串


在Java中我們經常利用正則表達式來分割字符串,正則表達式的確給我們帶來了諸多方便,但正則表達式中也有很多細節之處值得我們注意,否則就會給我們帶來意想不到的結果。

下面是我總結的一些值得注意的地方:

(1)反斜杠在正則表達式中只能以偶數的次數連續出現

  例如:\\(, \\{, \\\\

(2)特殊的字符在正則表達式中需要進行轉義處理 

特殊字符 處理方式
          +          \\+
         ?          \\?
         \          \\\\
         *           \\*
         ^           \\^
          .           \\.
         $           \\$
         (          \\(
         )          \\)
        {           \\{
         }           \\}

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

(3)如果正則表達式匹配的分割串出現在目標串的首部,則分割后產生的第一個字符串為空字符串

  String[] str = "abcfhdjfabcjdkabc".split("(abc)+");

  str[0]是一個空字符串

(4)當要指定正則表達式中分割字符串的次數時,應將分割字符串用()括起來

  String[] str = "abcdfifjabcabcdfkabcabckgflh".split("(abc)+");


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM