java之贪婪爬取和非贪婪爬取

复制代码
public class RegexDemo6 {
    public static void main(String[] args) {
        String str="java自从95年问世以来,abbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaa" +
                " 经历了很多版本,目前企业中用的最多是java8和java11,"+
                "因为这俩个是长期版本,下一个长期支持版本是java17,相信在未来不就java17也会逐渐登上历史舞台";

        //贪婪爬取的意思就是要尽可能获取多的数据
        //非贪婪爬取的意思就是尽可能少的获取数据
        //贪婪爬取一般是在要爬取的数据后面加一个+号
        //非贪婪爬取一般是在要爬取的数据后面加一个+号和?号

        String regex="ab+";
        //利用正则表达式来获取到regex
        Pattern p = Pattern.compile(regex);
        //然后再用文本匹配器去获取
        Matcher m = p.matcher(str);
        //再用while循环去遍历
        while(m.find()) {
            System.out.println(m.group());
        }
    }
}

这是贪婪爬取

非贪婪爬取:

相关推荐
代码匠心2 小时前
从零开始学Flink:数据源
java·大数据·后端·flink
间彧2 小时前
Spring Boot项目中如何自定义线程池
java
间彧2 小时前
Java线程池详解与实战指南
java
用户298698530142 小时前
Java 使用 Spire.PDF 将PDF文档转换为Word格式
java·后端
渣哥3 小时前
ConcurrentHashMap 1.7 vs 1.8:分段锁到 CAS+红黑树的演进与性能差异
java
间彧3 小时前
复用线程:原理详解与实战应用
java
咖啡Beans4 小时前
使用OpenFeign实现微服务间通信
java·spring cloud
我不是混子4 小时前
说说单例模式
java
间彧7 小时前
SimpleDateFormat既然不推荐使用,为什么java 8+中不删除此类
java