//Pattern:表示正则表达式
//Matcher:文本匹配器,作用按照正则表达式规则去读取文本,从头开始读取,寻找符合规则的子串
package regexdemo;
import java.util.regex.Pattern;
import java.util.regex.Matcher;
public class Regex3 {
public static void main(String[] args) {
//本地爬虫
//寻找文本里面的JavaXX
//Java自从95年问世以来,经历了很多版本,目前企业中用的最多的是Java8和Java11因为这两个是长期支持版本,下一个长期支持版本是Java17,相信在未来不久Java17也会逐渐登录上历史舞台。
String str="Java自从95年问世以来,经历了很多版本,目前企业中用的最多的是Java8和Java11因为这两个是长期支持版本,下一个" +
"长期支持版本是Java17,相信在未来不久Java17也会逐渐登录上历史舞台。\n";
//Pattern:表示正则表达式
//Matcher:文本匹配器,作用按照正则表达式规则去读取文本,从头开始读取,寻找符合规则的子串
//获取正则表达式的对象
Pattern p=Pattern.compile("Java\\d{0,2}");
//获取文本匹配器的对象
//m在str中找到满足p规则下的子串
Matcher m=p.matcher(str);
//拿着文本匹配器从头开始找 满足规则的子串
//如果没有,就返回false
//如果有,就返回true,在底层记录子串的起始索引和结束索引+1
//boolean b = m.find();
//第二次再调用find时,会继续读取后面的内容,读取到下一个满足对应规则的子串,返回true并记录索引
//方法底层会根据find方法记录的索引进行截取
//subString(起始索引,结束索引);包头不包尾
//把截取的小串进行返回
//String s1= m.group();
//System.out.println(s1);
System.out.println("出现JavaXX的有:");
while(m.find()){
String s1= m.group();
System.out.println(s1);
}
}
}