/*
B:案例演示
需求:校验qq号码 87364843
1:0不能开头
2:要求必须是5-15位数字
2147483647
matches(String regex)
告知此字符串是否匹配给定的正则表达式。
s.matches("规则");
正则表达式 : 表示一种规则的字符串
*/
public class RegexDemo {
public static void main(String[] args) {
String qq = "45387465";
// boolean b = verify(qq);
// System.out.println(b);
//
//正则表达式
//String regex = "[1-9][0-9]{4,14}";
String regex= "[1-9]\\d{4,14}";
boolean matches = qq.matches(regex);
System.out.println(matches);
}
private static boolean verify(String qq) {
// TODO
// 非空
if (qq == null) {
return false;
}
// 0不能开头
if (qq.startsWith("0")) {
return false;
}
// 判断长度
if (qq.length() >= 16 || qq.length() <= 4) {
return false;
}
// 判断数字
char[] ch = qq.toCharArray();
for (int i = 0; i < ch.length; i++) {
if (ch[i] < '0' || ch[i] > '9') {
return false;
}
}
return true;
}
}
|
|