《java入门第一季》之好玩的正则表达式

来源:互联网 发布:阿扎姆号游艇数据 编辑:程序博客网 时间:2024/05/16 19:08
先不通过正则表达式来判断输入的qq号码是否正确。
import java.util.Scanner;/* * 校验qq号码. * 1:要求必须是5-15位数字 * 2:0不能开头 *  * 分析: * A:键盘录入一个QQ号码 * B:写一个功能实现校验 * C:调用功能,输出结果。 */public class RegexDemo {public static void main(String[] args) {// 创建键盘录入对象Scanner sc = new Scanner(System.in);System.out.println("请输入你的QQ号码:");String qq = sc.nextLine();System.out.println("checkQQ:"+checkQQ(qq));}/* * 写一个功能实现校验  */public static boolean checkQQ(String qq) {boolean flag = true;// 校验长度if (qq.length() >= 5 && qq.length() <= 15) {// 0不能开头if (!qq.startsWith("0")) {// 必须是数字char[] chs = qq.toCharArray();for (int x = 0; x < chs.length; x++) {char ch = chs[x];//每一个字符if (!Character.isDigit(ch)) {flag = false;break;}}} else {flag = false;}} else {flag = false;}return flag;}}


接着,正则表达式来做校验。


import java.util.Scanner;/* * 正则表达式:符合一定规则的字符串。 */public class RegexDemo2 {public static void main(String[] args) {// 创建键盘录入对象Scanner sc = new Scanner(System.in);System.out.println("请输入你的QQ号码:");String qq = sc.nextLine();System.out.println("checkQQ:" + checkQQ(qq));}public static boolean checkQQ(String qq) {return qq.matches("[1-9]\\d{4,14}");//括号里面就是正则表达式的规则。\d代表[0-9]。要在正则表达式中表示\d要写成\\d}}

可见,使用了正则表达式,一行就代表了上边很多行。




0 0
原创粉丝点击