黑馬程式員——java學習16(畢25)——Regex

來源:互聯網
上載者:User

標籤:

Regex

符合一定規則的運算式

作用:專門用於操作字串

特點:用於一些特定的符號來表示一些代碼操作,這樣就簡化書寫

好處:可以簡化對字串的複雜操作

具體操作功能:

1、匹配:

    public boolean matches(String regex)

參數

regex - 用來匹配此字串的Regex

 

2、切割

      String[] split(String  regex)           

 根據給定Regex的匹配拆分此字串。

 

3、替換

         String  replaceAll(String  regex , String  replacement)

使用給定的replacement替換此字串中所有匹配給定的Regex的子字串。

 

4、擷取

  

 1 package learn; 2  3 /* 4 * 擷取 5 */ 6 import java.util.regex.*; 7  8 class RegexDemo2 9 {10     public static void main(String[] args) 11     {12         get();13     }14     public static void get()15     {16         String str = "ming tian jiu yao fang jia le ,dajia .";17         System.out.println(str);18         String regex = "\\b[a-z]{3}\\b";19 20         //將規則封裝成對象。21         Pattern p = Pattern.compile(regex);22 23         //讓正則對象和要作用的字串相關聯。擷取匹配器對象。24         Matcher m  = p.matcher(str);25 26         //System.out.println(m.matches());//其實String類中的matches方法。用的就是Pattern和Matcher對象來完成的。27                                         //只不過被String的方法封裝後,用起來較為簡單。但是功能卻單一。28         29         //boolean b = m.find();30 //        System.out.println(b);31 //        System.out.println(m.group());32         while(m.find())33         {34             //使用group方法擷取匹配後的結果。35             System.out.println(m.group());36             //start()和end()方法的傳回值分別表示匹配後的結果在字串上的角標位置。37             System.out.println(m.start()+","+m.end());38         }39     }40 }

 

字元 x 字元 x \\ 反斜線字元 \0n 帶有八進位值 0 的字元 n (0 <= n <= 7) \0nn 帶有八進位值 0 的字元 nn (0 <= n <= 7) \0mnn 帶有八進位值 0 的字元 mnn(0 <= m <= 3、0 <= n <= 7) \xhh 帶有十六進位值 0x 的字元 hh \uhhhh 帶有十六進位值 0x 的字元 hhhh \t 定位字元 (‘\u0009‘) \n 新行(換行)符 (‘\u000A‘) \r 斷行符號符 (‘\u000D‘) \f 換頁符 (‘\u000C‘) \a 警示 (bell) 符 (‘\u0007‘) \e 轉義符 (‘\u001B‘) \cx 對應於 x 的控制符   字元類 [abc] a、b 或 c(簡單類) [^abc] 任何字元,除了 a、b 或 c(否定) [a-zA-Z] a 到 z 或 A 到 Z,兩頭的字母包括在內(範圍) [a-d[m-p]] a 到 d 或 m 到 p:[a-dm-p](並集) [a-z&&[def]] d、e 或 f(交集) [a-z&&[^bc]] a 到 z,除了 b 和 c:[ad-z](減去) [a-z&&[^m-p]] a 到 z,而非 m 到 p:[a-lq-z](減去)   預定義字元類 . 任何字元(與行結束符可能匹配也可能不匹配) \d 數字:[0-9] \D 非數字: [^0-9] \s 空白字元:[ \t\n\x0B\f\r] \S 非空白字元:[^\s] \w 單詞字元:[a-zA-Z_0-9] \W 非單詞字元:[^\w] 邊界匹配器 ^ 行的開頭 $ 行的結尾 \b 單詞邊界 \B 非單詞邊界 \A 輸入的開頭 \G 上一個匹配的結尾 \Z 輸入的結尾,僅用於最後的結束符(如果有的話) \z 輸入的結尾   Greedy 數量詞 X? X,一次或一次也沒有 X* X,零次或多次 X+ X,一次或多次 X{n} X,恰好 n 次 X{n,} X,至少 n 次 X{n,m} X,至少 n 次,但是不超過 m 次 組和捕獲 擷取的群組可以通過從左至右計算其開括弧來編號。例如,在運算式 ((A)(B(C))) 中,存在四個這樣的組: 1     ((A)(B(C))) 2     \A 3     (B(C)) 4     (C) 組零始終代表整個運算式。

 

黑馬程式員——java學習16(畢25)——Regex

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.