package Day17;
//正则表达式的几种方法练习
import java.util.Arrays;
import java.util.Scanner;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class Demo2 {
public static void main(String[] args) {
/*testSplit();
testReg();
matchEmail();*/
testMacher();
}
public static void testSplit(){
String str = "明 天 放 假";
System.out.println(Arrays.toString(str.split(" +")));
}
public static void testReg(){
String str = "大大大大家家家玩的的的的的开心";//以重叠词来分割
String[] s = str.split("(.)\\1+");//(.)\\1+ 以任意一个字符来分组,后面复用前面的分组内容至少一个
System.out.println(Arrays.toString(s));
//如果需要在正则表达式外部引用组内的内容的话,需要用$加上组号,组号从1开始
String strReplace = str.replaceAll("(.)\\1+", "$1");
System.out.println(strReplace);
}
public static void matchEmail(){
System.out.println("请输入一个邮箱:");
Scanner scan = new Scanner(System.in);
String email = scan.next();
boolean flag = email.matches("^[a-zA-Z0-9_-]+@[a-zA-Z0-9_-]+(\\.[a-zA-Z0-9_-]+)+$");
System.out.println(flag);
}
public static void testMacher(){
String content = "da jia de jia qi guo wan liao hai kai xin ma";
String reg = "\\b[a-zA-Z]{3}\\b";//\\b是边界匹配,不匹配其他任何部分
Pattern p = Pattern.compile(reg);
Matcher m = p.matcher(content);
while(m.find()){
System.out.println(m.group());
}
}
}
正则表达式的几种方法练习
最新推荐文章于 2022-10-17 23:53:15 发布