//校验邮箱
public class TestEmail {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
//*号代表任意数量,放在0-9a-zA-Z后面,代表可以写任意数量的字母和数字
//@是邮箱的符号,接在刚刚那串的后面
//|代表或,也就是说@后可以跟着qq或163或sina中的任意字符串,代表哪家邮箱
//.本身有自己的含义,所以我们要有\\转义符号把它转成真正的字符.
//后面接着邮箱的后缀com或cn,用|连接
//包含着这些规则的表达式,我们称为正则表达式
String res ="([0-9a-zA-Z]*)@((qq)|(163)|(sina))\\.((com)|(cn))";
System.out.print("邮箱:");
while (true){
//这里我们手动输入一个邮箱字符串
String email = input.next();
//这里我们利用字符串的matches方法来判断一下该字符串是否符合正则表达式规则
if(email.matches(res)){
//如果符合,结果为true,我们输出正确提示,并结束循环
System.out.println("该邮箱正确");
break;
}
//否则会提示错误,会进行下一次循环,我们重新输入
System.out.print("邮箱格式不正确,请重新输入:");
}
}
}
以上是邮箱的验证代码以及代码的对应解释,接下来,我们来看手机号码:
public class TestPhoneNum {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
//首位为1,第二位为 3|4|5|8|9 其中之一,用[]将其包裹即可,后9位都为数字
String res ="1[3|4|5|8|9]\\d{9}$";
System.out.print("电话号码:");
while (true){
String pass = input.next();
if(pass.matches(res)){
System.out.println("该号码正确");
break;
}
System.out.print("号码格式不正确,请重新输入:");
}
}
}
以上就是正则表达式的简易应用啦,如果大家有更多的需求,比如需要更多的邮箱公司或是后缀,只需要按照正则表达式手动修改一下就好啦。
那么今天的内容就到这里啦,如果存在哪些疑问或问题欢迎大家指出,我们下期再见~