正则表达式(十三)——分组
1、分组
1 package com.wy.regular; 2 3 import java.util.regex.Matcher; 4 import java.util.regex.Pattern; 5 6 public class RegularTest { 7 8 public static void main(String[] args) { 9 /** 10 * 正则表达式的分组 group 11 */ 12 Pattern pattern = Pattern.compile("\\d{3,5}[a-z]{2}"); 13 Matcher matcher = pattern.matcher("123aa-45456bb-789cc-00"); 14 // 字串:123aa 45456bb 789cc 15 while (matcher.find()) { 16 pri(matcher.group()); 17 } 18 } 19 20 public static void pri(Object object){ 21 System.out.println(object); 22 } 23 }
2、查找分组后的数字
package com.wy.regular; import java.util.regex.Matcher; import java.util.regex.Pattern; public class RegularTest { public static void main(String[] args) { /** * 正则表达式的分组 group * (\\d{3,5})([a-z]{2}) 把数字和字母分组。切记:这里是大括号而不是花括号 */ Pattern pattern = Pattern.compile("(\\d{3,5})([a-z]{2})"); String str = "123aa-45456bb-789cc-00"; Matcher matcher = pattern.matcher(str); // 打印数字 while (matcher.find()) { pri(matcher.group(1)); } } public static void pri(Object object){ System.out.println(object); } }