加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

Greedy Reluctant Possessive区别

发布时间:2020-12-14 04:27:05 所属栏目:百科 来源:网络整理
导读:span style="font-size:14px;"package cn.itcast.test;import java.util.regex.Matcher;import java.util.regex.Pattern;//Greedy Reluctant Possessive区别public class Demo3 {public static void main(String[] args) {/*//Greedy (.{3,10})[0-9] --一般
<span style="font-size:14px;">package cn.itcast.test;

import java.util.regex.Matcher;
import java.util.regex.Pattern;

//Greedy  Reluctant   Possessive区别
public class Demo3 {
	
	public static void main(String[] args) {
		/*	//Greedy   (.{3,10})[0-9]  -->一般使用这个
		//先把s吞取10个字符再说,与模式串进行匹配,匹配失败,把最后一个吐出来,吐出来的正好是数字,正好匹配,所以输出0-10
		Pattern p = Pattern.compile("(.{3,10})[0-9]");
		String  s = "aaaa3bbbb6";
		Matcher m = p.matcher(s);
		if(m.find()){
			p(m.start()+ "-" + m.end());
		}else{
			p("not match");
		}*/
		
		/*//Reluctant	(.{3,10}?)[0-9]
		//这个与Greedy正好相反 吞最少的  正好结果为0-5
		Pattern p = Pattern.compile("(.{3,10}?)[0-9]");
		String  s = "aaaa3bbbb6";
		Matcher m = p.matcher(s);
		if(m.find()){
			p(m.start()+ "-" + m.end());
		}else{
			p("not match");
		}*/
		
		// Possessive  与Greedy 不同的是,它不吐字符,这个匹配不上
		Pattern p = Pattern.compile("(.{3,10}+)[0-9]");
		String  s = "aaaa3bbbb6";
		Matcher m = p.matcher(s);
		if(m.find()){
			p(m.start()+ "-" + m.end());
		}else{
			p("not match");
		}
		
		
		
	}

	private static void p(Object o) {
		System.out.println(o);
	}
}
</span>

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读