/**
* 测试正则表达式的基本用法
Pattern 和 Matcher
* @author 小帆敲代码
*
*/
public class Demo01 {
public static void main(String[] args) {
//准备正则表达式
Pattern p=Pattern.compile("([a-z]+)([0-9]+)");
//正则表达式和字符串关联
Matcher m=p.matcher("aa34djsj22**djbjibij244");
boolean yesorno=m.matches();//对整个字符串来说,是否匹配
System.out.println(yesorno);
while(m.find()) {//是否找得到下一个子字符串符合该正则表达式
System.out.println(m.group());//捕获组,group(),group(0)表示找到的整个子字符串
System.out.println(m.group(1));//捕获组1
System.out.println(m.group(2));//捕获组2
}
}
}
/**
* 字符串的分割+正则表达式
* @author 小帆敲代码
*
*/
public class Demo2 {
public static void main(String[] args) {
//分割字符串
String str="a,b,c";
String[] arry=str.split(",");
System.out.println(Arrays.toString(arry));
String str2="a2387488b48378c9832984";
String[] array=str2.split("\\d+");//一杠变两杠
System.out.println(Arrays.toString(array));
}
}
/**
* 字符串的替换+正则表达式
* @author 小帆敲代码
*
*/
public class Demo3 {
public static void main(String[] args) {
//准备正则表达式
Pattern p=Pattern.compile("[0-9]");
//正则表达式和字符串关联
Matcher m=p.matcher("aa34djsj22**djbjibij244");
String newStr=m.replaceAll("#");
System.out.println(newStr);
}
}