package cn.spring01.Regex;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
/**
*
* @author ycf
*
*/
public class RegexDemo {
public static void main(String[] args) {
// 把正则表达式编译成模式对象
// public static Pattern compile(Stringregex)
// Pattern p = Pattern.compile("a*b");//代表需要若干个a ,可以为0个
// // 通过模式对象创建匹配器对象
// Matcher m = p.matcher("aaaaab");
// // // 调用匹配器对象的判断功能
// boolean b = m.matches();
// System.out.println(b); //true :说明匹配这种模式
//
// // 如果仅仅是做判断功能,用普通的字符串功能能实现吗?
// Stringstr = "aaaaab";
// Stringregex = "a*b";
// boolean flag = str.matches(regex);
// System.out.println(flag);
// 只所以讲上面那种方式,是为了使用它的获取功能。
// Stringstr = "dajia zhu yi le, ming tian bu fang jia, xie xie!";
// 想要获取3个单词字符组成的单词 [a-zA-Z_0-9]
// 定义字符串
String str ="da jia zhu yi le, ming tian bu fang jia, xie xie!";
// 定义规则
String regex ="\\b[a-z]{3}\\b";
// // 得到模式对象
Pattern p = Pattern.compile(regex);
// // 得到匹配器对象
Matcher m =p.matcher(str);
// 调用匹配器对象的功能
System.out.println(m.matches());
// public boolean find()
// public String group()
/*
* System.out.println(m.find()); // java.lang.IllegalStateException: No
* match found System.out.println(m.group());
*
* System.out.println(m.find()); System.out.println(m.group());
* System.out.println(m.find()); System.out.println(m.group());
* System.out.println(m.find()); System.out.println(m.group());
* System.out.println(m.find()); System.out.println(m.group());
* System.out.println(m.find()); System.out.println(m.group());
*/
while (m.find()) {//遍历
System.out.println(m.group());
}
}
}