1、判断功能
String类的public boolean matches(String regex)
需求:
判断手机号码是否满足要求?
分析:
A:键盘录入手机号码
B:定义手机号码的规则
13688886868
13866668888
13456789012
18638833883
C:调用功能,判断即可
D:输出结果
import java.util.Scanner;
public class RegexDemo {
public static void main(String[] args) {
//键盘录入手机号码
Scanner sc = new Scanner(System.in);
System.out.println("请输入你的手机号码:");
String phone = sc.nextLine(); //定义手机号码的规则
String regex = "1[38]\\d{9}";
// 1:第一个字符是1,[38]:第二个字符是3-8;//d{9}:后面9个字符只要是数字都可以 //调用功能,判断即可
boolean flag = phone.matches(regex); //输出结果
System.out.println("flag:"+flag);
}
}
2、校验邮箱
分析:
邮箱的规则:
1、(不定个数的字母或者数字)@(2-4个不定个数的字母或者数字).(com/cn 2个或者3个字母) 其中.(com/cn) 是不定次数的
2、正则表达式:String regx = "\\w+@\\w{2,6}(\.[a-zA-Z]{2,3})+";
解析:
\\w :所有字母和数字 ; + :前面的出现1次或者多次 ; \\w{2,6} : \\w只能出现2-6个
\. : ‘.’这个字符 ; [a-zA-Z] : 所有的字母 ; {2,3} :前面的字母只能出现2-3个 ,
(\.[a-zA-Z]{2,3})+ : ‘+’前面的内容出现1次或者多次
注意:
A:是 \ 而不是 /
B:正则表达式不能有空格
3、调用2的功能,进行判断
判断功能
String类的public boolean matches(String regex)
4、输出结果 boolean类型
import java.util.Scanner;
public class EmailTest { public static void main(String[] args) {
// 创建键盘录入
Scanner sc = new Scanner(System.in);
System.out.println("请输入邮箱:");
String str = sc.nextLine(); //定义邮箱的组成
String regex = "\\w+@\\w{2,6}(\\.\\w{2,3})+"; //调用判断功能 String类的public boolean matches(String regex)
boolean flag = str.matches(regex); System.out.println("你输入的email是:"+flag);
}
}