Java SE之正则表达式二:匹配

package demo.regex;

import java.util.regex.Pattern;

/*
	正则表达式:匹配
*/
public class RegexMatchesDemo {
	//匹配手机号码
	//13XXXXX;15XXXXXX;18XXXXXX
	public static void checkPhone(String string) {
		System.out.println(Pattern.matches("1[358]\\d{9}", string));
	}
	
	//匹配邮箱
	/*
	 	(0)只能是QQ邮箱/GMail邮箱/Outlook邮箱/163邮箱之一
		(1)字母开头;
		(3)用户名部分:只能是字母或者数字;
		(4)用户名部分:长度为3到18;
		(5)不能以点、减号或下划线结尾,不能出现连续两个或两个以上的点、减号或下划线
	 */
	public static void checkEmail(String email) {
		System.out.println(Pattern.matches("[a-zA-Z]{1,}[a-zA-Z0-9]{2,17}@(qq|gmail|163){1}\\.com", email));
	}
	
	/////////////////////////////////////
	
	public static void checkPhoneTest() {
		checkPhone("1345654647");//false
		checkPhone("13456546470");//true
		checkPhone("1745654647b");//false
		checkPhone("19456546479");//false
	}
	
	public static void checkEmailTest() {
		checkEmail("324745@gmail.cnm");//false
		checkEmail("324745@gmail.com");//false
		checkEmail("c324745@162.com");//false
		checkEmail("a324745@gmail.com");//true
		checkEmail("johnnyztsd@qq.com");//true
	}
	
	public static void main(String args[]) {
//		checkPhoneTest();
		checkEmailTest();
	}
}

  

posted @ 2018-04-29 17:17  千千寰宇  阅读(241)  评论(0编辑  收藏  举报