通过前面的学习可以知道正则表达式的应用有三处:匹配、切割、替换,String类中均有方法与之对应。
1-匹配 matches()
2-切割 split()
3-替换 replaceAll()
现在有一新的需求,找出字符串中四个字母组成的单词。
String str="xiao he cai lou jian jian jiao,zao you qing ting li shang tou";
查考JDK文档,找到了pattern类 ,具体使用方法如下:
//先将字符串形式的正则规则编译成pattern对象;
Pattern p = Pattern.compile("a*b");
//通过pattern对象的matcher方法生成匹配器,将正则规则和待处理的字符串进行关联;
Matcher m = p.matcher("aaaaab");
//调用匹配器对象的matchers()方法,除此还有lookingAt()方法,find()方法
boolean b = m.matches();
String str="xiao he cai lou jian jian jiao,zao you qing ting li shang tou";
String regx="\\b[a-zA-Z]{3}\\b"; //单词加一个单词的边界\\b
//1.将字符串正则表达转换为pattern对象
Pattern p = Pattern.compile(regx);
//2.通过pattern对象的matcher方法生成匹配器对象,将正则规则和待处理字符串进行关联
Matcher m = p.matcher(str);
//3.调用matcher对象的find()方法,逐个查找单词。
while(m.find())
{ System.out.println(m.group()); }