例子
1,分割:
@Test public void testDivision() { String s = "鋤禾日當午,汗滴禾下土"; String[] sArray = s.split("(?<=\\G.{2})"); List<String> list = Arrays.asList(sArray); System.out.println(list.toString()); //輸出:[鋤禾, 日當, 午,, 汗滴, 禾下, 土] }
2,匹配:
@Test public void testMatch() { String value="15700098756"; Pattern p = Pattern.compile("^((13[0-9])|(15[^4,\\D])|(18[0,5-9]))\\d{8}$"); Matcher m = p.matcher(value); System.out.println(m.matches());//boolean }
3,替換:
@Test public void testReplace() { String s = "鋤禾123日當午1,2汗滴禾下土123"; String ss = s.replaceAll("[0-9]", "0"); System.out.println(ss); //輸出:鋤禾000日當午0,0汗滴禾下土000 }
4,獲取:
@Test public void testString() { String s = "A8760X12YY3T"; // 把要匹配的字符串寫成正則表達式,然后要提取的字符使用括號括起來 // 在這里,我們要提取最后一個數字,正則規則就是“一個數字加上大於等於0個非數字再加上結束符” Pattern pattern = Pattern.compile("(\\d)[^\\d]*$"); Matcher matcher = pattern.matcher(s); if(matcher.find()) System.out.println(matcher.group(1)); //輸出:3 }