Java学习日志14.2 (第一阶段基础)

2018.10.22 天气:晴
黑马程序员养成记录第二天

3.常见对象(数量词)

Greedy 数量词
* X? X,一次或一次也没有
* X
X,零次或多次
* X+ X,一次或多次
* X{n} X,恰好 n 次
* X{n,} X,至少 n 次
* X{n,m} X,至少 n 次,但是不超过 m 次*
*

代码实现

package com.heima.Regex;

public class demo4_Regex {
public static void main(String[] args) {
	demo1();
	System.out.println("-----------------");
	demo2();
	System.out.println("-----------------");
	demo3();
	System.out.println("-----------------");
	demo4();
	System.out.println("-----------------");
	demo5();
	System.out.println("-----------------");
	demo6();

	
}

private static void demo6() {
	String regex = "[abc]{5,10}";	//至少5次,不超过10次,包含头也包含尾
	System.out.println("aaaaa".matches(regex));			//true
	System.out.println("abcabc".matches(regex));		//true
	System.out.println("abcaaaaaaaaaa".matches(regex));	//false
	System.out.println("aaaaaaaaaaa".matches(regex));	//false
	System.out.println("dddd0".matches(regex));			//false
}

private static void demo5() {
	String regex = "[abc]{5,}"; //至少5次
	System.out.println("aaaaa".matches(regex));		//true
	System.out.println("abcabc".matches(regex));	//true	
	System.out.println("abca".matches(regex));		//false
	System.out.println("aaaa".matches(regex));		//false
	System.out.println("dddd".matches(regex));		//false
}

private static void demo4() {
	String regex = "[abc]{1}";	//恰好一次
	System.out.println("".matches(regex));		//false
	System.out.println("a".matches(regex));		//true
	System.out.println("ac".matches(regex));	//false
	System.out.println("aa".matches(regex));	//false
}

private static void demo3() {
	String regex = "[abc]+";	//1次或(到)多次
	System.out.println("".matches(regex));		//false
	System.out.println("a".matches(regex));		//true
	System.out.println("abc".matches(regex));	//true
	System.out.println("aa".matches(regex));	//true
	System.out.println("ddd".matches(regex));	//true
}

private static void demo2() {
	String regex = "[abc]*"; //零次或(到)多次
	System.out.println("".matches(regex));		//true
	System.out.println("a".matches(regex));		//true
	System.out.println("abc".matches(regex));	//true
	System.out.println("aa".matches(regex));	//true
	System.out.println("ddd".matches(regex));	//false
}

private static void demo1() {
	String regex = "[abc]?";	//出现一次或者一次也没有,针对于[abc]而言,对其他字符不行
	System.out.println("".matches(regex));		//true
	System.out.println("a".matches(regex));		//true
	System.out.println("d".matches(regex));		//false
	System.out.println("aa".matches(regex));	//false
}
}

程序结果:
true
true
false
false
-----------------
true
true
true
true
false
-----------------
false
true
true
true
false
-----------------
false
true
false
false
-----------------
true
true
false
false
false
-----------------
true
true
false
false
false

猜你喜欢

转载自blog.csdn.net/binge_kong/article/details/83301701