1、正規表現
-
これは、文法規則の文字列にマッチラインの単一又は一連を説明するために使用される文字列を指します。これは、実際にルールです。これは、独自の特殊な用途を持っています。
-
役割は:例えば、通常はこの事の長さを制限するために登録したメール、メールのユーザー名とパスワードは、実行する正規表現の長さを制限することがあります
2、ケースプレゼンテーション
[1]必要があります。
-
QQの番号を確認してください。
-
要件は5-15桁の数字でなければなりません
-
0で開始することはできません
-
すべてデジタル化しなければなりません
[2]非正規表現
/*
* 需求:校验qq号码.
* 1:要求必须是5-15位数字
* 2:0不能开头
* 3:必须都是数字
* 校验qq
* 1,明确返回值类型boolean
* 2,明确参数列表String qq
*/
public static boolean checkQQ(String qq) {
boolean flag = true; //如果校验qq不符合要求就把flag置为false,如果符合要求直接返回
if(qq.length() >= 5 && qq.length() <= 15) {
if(!qq.startsWith("0")) {
char[] arr = qq.toCharArray(); //将字符串转换成字符数组
for (int i = 0; i < arr.length; i++) {
char ch = arr[i]; //记录每一个字符
if(!(ch >= '0' && ch <= '9')) {
flag = false; //不是数字
break;
}
}
}else {
flag = false; //以0开头,不符合qq标准
}
}else {
flag = false; //长度不符合
}
return flag;
}
[3]正規表現
public static void main(String[] args) {
System.out.println(checkQQ("012345"));
System.out.println(checkQQ("a1b345"));
System.out.println(checkQQ("123456"));
System.out.println(checkQQ("1234567890987654321"));
String regex = "[1-9]\\d{4,14}";//确定长度。确定数字范围
System.out.println("2553868".matches(regex));
System.out.println("012345".matches(regex));
System.out.println("2553868abc".matches(regex));
}