Java 正则表达式集合

1.手机号码的正则达式:

现在有13、14、15、17、18打头的手机号,有的会习惯性的输入手机号前缀0、86、17951(因为有的拨打长途要加上前缀),所以应该也算是正确的号码。

另外附上现在号码的集合(当然这个也不是最新的,仅供参考):点击打开链接

public class MatchDemo {
	public static void main(String[] args) {
		// 方法一,可以修改13、14、15、17、18后面的一位数字,举例“13[578]”即前两位为“13”时,第三位只能为“5,7,8”
		String telMatch = "^(0|86|17951)?(13[0-9]|14[0-9]|15[0-9]|17[0-9]|18[0-9])[0-9]{8}$";
		// 方法二,表示以13、14、15、17、18开头的号码,后面9位为任意的数字。
		String telMatch1 = "^(0|86|17951)?(1[34578])[0-9]{9}$";
		String tel = "13345678999";
		System.out.println(tel.matches(telMatch1));//如果返回true,则判断是正确的手机号码,反之不然
	}
}

2.身份证号码的正则表达式:

应该至少要符合以下两个条件:

a、15位或18位,如果是15位,必需全是数字。
b、如果是18位,最后一位可以是数字或字母Xx,其余必需是数字。

String cardMatch="^(\\d{15}$|^\\d{18}$|^\\d{17}(\\d|X|x))$";
		String card = "34122819941012802x";
		System.out.println(card.matches(cardMatch));


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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值