黑马程序员技术交流社区
标题:
校验qq号码.
[打印本页]
作者:
lxl962189096
时间:
2016-5-20 13:37
标题:
校验qq号码.
package com.heima.regex;
public class Demo1_Regex {
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));
}
/*
* 需求:校验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;
}
}
作者:
TCK8888
时间:
2016-5-20 14:26
楼主,一起交流学习哈,,这是我对这道题,我自己的一个小想法
import java.util.Scanner;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
/*
* 需求:校验qq号码.
* 1:要求必须是5-15位数字
* 2:0不能开头
* 3:必须都是数字
* 校验qq
* 1,明确返回值类型boolean
* 2,明确参数列表String qq
*/
public class CheckQQNumber {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("请输入QQ号码:");
// 对输入的QQ号码进行验证
inputQQ(sc);
}
public static void inputQQ(Scanner sc) {
while (sc.hasNext()) {
String QQ = sc.next();
if (checkQQ(QQ)) {
System.out.println("QQ号码输入正确");
return;
} else {
System.out.println("QQ号码输入错误,请重新输入:");
continue;
}
}
}
public static boolean checkQQ(String QQ) {
String regex = "^[1-9][0-9]{4,14}$";
Pattern p = Pattern.compile(regex);
Matcher m = p.matcher(QQ);
boolean flag = m.matches();
return flag;
}
}
复制代码
作者:
张鹤
时间:
2016-5-20 15:03
你这程序太厉害了 大神啊
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2