定义
正则表达式(英语:Regular Expression,在代码中常简写为regex、regexp或RE),又称正规表示式、正规表示法、正规表达式、规则表达式、常规表示法,是计算机科学的一个概念。正则表达式使用单个字符串来描述、匹配一系列匹配某个句法规则的字符串。在很多文本编辑器里,正则表达式通常被用来检索、替换那些匹配某个模式的文本。
我的理解
用于匹配特点规则的字符串
解释
当你在考虑判断别人输入的文本是否符合电话号规范的时候,你就可以用到正则表达式,当你要判断输入内容是否符合邮箱规则的时候,就可以使用正则表达式。这些都是特定规则的字符串,比如电话号,先只考虑中国的吧,比如目前来说就是11位数字,有其他字符就不行,前三位表示运营商,后四位表示你所在省份也就是归属地,最后四位是个人编码,但是前三位用代码表示就是你去运营商那里查是否存在该号段,我们自己写代码的时候可以粗糙一点,前三位就是1开头的数字,后面就是8位数字
Java
public static boolean isPhone(String phone) {
String regex = "^(1[0-9][0-9])\\d{8}$";
if (phone.length() != 11) {
System.out.println("手机号应为11位数");
return false;
} else {
Pattern p = Pattern.compile(regex);
Matcher m = p.matcher(phone);
boolean isMatch = m.matches();
if (!isMatch) {
System.out.println("请填入正确的手机号");
}
return isMatch;
}
}
“^”表示开头,1在第一位表示第一位必须是1,后面两位分别用[]括起来的是表示一位0到9的数字,最后是8位数字用“d{8}”表示结尾加上“$”