java正则表达式的运用

一.常见的正则表达式

	/**
	 * 数字正则表达式,以^开头,以$结尾,[0-9]表示0-9的数字,*表示0-n个
	 * 该正则表达式匹配0-n个数字
	 */
	private static final String REGEX_NUM = "^[0-9]*$";
	
	/**
	 * 以1开头的11位手机号码校验正则表达式,以^开头,以$结尾
	 * (1)表示单独的一个数字1开头
	 * [0-9]表示0-9的任意数字,{10}表示10次
	 * [0-9]{10},表示0-9的任意数字出现10次
	 * 该正则表达式匹配以1开头的11位数字
	 */
	private static final String REGEX_PHONE = "^(1)[0-9]{10}$";
	
	/**
	 * 不允许为空英文字符正则表达式,以^开头,以$结束
	 * [a-zA-Z]表示a-z的小写英文字符和A-Z的大写英文字符
	 * +表示1-n个,不允许为空
	 * 该正则表达式匹配任意个(不为空的)英文字符串
	 */
	private static final String REGEX_CHAR = "^[a-zA-Z]+$";
	
	/**
	 * 校验变量名格式的正则表达式,以^开头,以$结束
	 * [_$a-z]表示允许以下划线_和$以及小写英文字符开头
	 * [_$0-9a-zA-Z]*表示允许以下划线_,$,数字0-9,大小写英文字符出现0-n次
	 * 该正则表达式匹配变量命名的格式,字母数字下划线$,不允许以数字开头
	 */
	private static final String REGEX_PARAM = "^[_$a-z][_$0-9a-zA-Z]*$";
	
	/**
	 * 匹配中文字符的表达式
	 */
	private static final String REGEX_CHINESE = "^[\\u4E00-\\u9FA5]*$"; 

二.Pattern类的使用

1.match匹配字符串格式
	// 校验字符串格式
	String str = "|";
	// pattern编译正则表达式,匹配一个|
	Pattern pattern = Pattern.compile("^[|]{1}$");
	// 以pattern正则来匹配字符串str
	Matcher matcher = pattern.matcher(str);
	// 判断是否完全符合正则的格式
	boolean flag = matcher.matches();
	System.out.println("符合正则表达式的格式:" + flag);
2.find寻找字符串是否存在
	// 校验字符串格式
	String str = "中|文";
	// pattern编译正则表达式,匹配一个|
	Pattern pattern = Pattern.compile("^|$");
	// 以pattern正则来匹配字符串str
	Matcher matcher = pattern.matcher(str);
	// 判断字符串中是否包含正则表达式串
	boolean flag = matcher.find();
	System.out.println("在str中发现正则表达式类型的字符串" + flag);

温馨提示:每次使用正则表达式之前,先在main方法中测试好,不然等你debug的时候,会怀疑人生。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值