博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
贪婪模式和非贪婪模式
阅读量:5337 次
发布时间:2019-06-15

本文共 1718 字,大约阅读时间需要 5 分钟。

1 package regex; 2  3 import java.util.regex.Matcher; 4 import java.util.regex.Pattern; 5  6 public class regexDemo { 7     public static void main(String[] args) { 8         String str1 = "19900330199012121990111119900220"; 9         String str = "((\\d{4})(\\d{2})(\\d{2}))";10         Pattern p = Pattern.compile(str);11         Matcher m = p.matcher(str1);12 13         while (m.find()) {14             // group分组左括号优先匹配。15             System.out.print("出生日期" + m.group(1));16             System.out.print("....");17             System.out.print("出生年" + m.group(2) + " ");18             System.out.print("出生月" + m.group(3) + " ");19             System.out.print("出生日" + m.group(4) + " ");20             // 返回以前匹配的初始索引。21             System.out.print("start:" + m.start() + " ");22             // 返回匹配后的位置。23             System.out.println("end:" + m.end());24         }25         26         String str2 = "
鱼鱼枫 这个选手 野路子
";27 //贪婪模式,指的是.*会匹配所有的信息,此处会找整个信息。28 p = Pattern.compile("(.*)");29 m = p.matcher(str2);30 while(m.find()){31 System.out.println(m.group(1));32 }33 //找到的结果:鱼鱼枫这个选手路子野34 35 //非贪婪模式,仅仅只是匹配第一个结果,*?表示使用非贪婪模式36 p = Pattern.compile("(.*?)");37 m = p.matcher(str2);38 while(m.find()){39 System.out.print(m.group(1));40 System.out.print("start:" + m.start() + " ");41 // 返回匹配后的位置。42 System.out.println("end:" + m.end());43 }44 //找到的结果:鱼鱼枫这个选手路子野45 }46 }

 

转载于:https://www.cnblogs.com/Akke/p/5008989.html

你可能感兴趣的文章
canvas动画
查看>>
4,7周围玩家
查看>>
关于webpack升级过后不能打包的问题;
查看>>
vue - 生命周期
查看>>
Python正则表达式
查看>>
Linux进程间通信--命名管道
查看>>
UVa 10970 - Big Chocolate
查看>>
js输出
查看>>
H5多文本换行
查看>>
HAL层三类函数及其作用
查看>>
Odoo 去掉 恼人的 "上午"和"下午"
查看>>
web@h,c小总结
查看>>
java编程思想笔记(一)——面向对象导论
查看>>
Data Structure 基本概念
查看>>
Ubuntu改坏sudoers后无法使用sudo的解决办法
查看>>
NEYC 2017 游记
查看>>
[搬运] 写给 C# 开发人员的函数式编程
查看>>
Python之旅Day14 JQuery部分
查看>>
core--线程池
查看>>
redux-effect
查看>>