16、用户名正则校验

编程题目:

16.编写一个校验用户名的程序,检测键盘录入的用户名是否合法。要求:用户名必须是6-10位之间的字母、下划线、@、.,并且不能以数字开头。

示例代码:

package program.string.exercise16;

import java.util.Scanner;
import java.util.regex.Matcher;
import java.util.regex.Pattern;

/**
 * 16.编写一个校验用户名的程序,检测键盘录入的用户名是否合法
 * 要求:用户名必须是6-10位之间的字母、下划线、@、.
 * 并且不能以数字开头
 *
 */

/**
 * ^:表示以什么开头
 * $:表示以什么结尾
 * []:表示一个集合
 * {}:表示集合位数
 * \d=[0-9]
 */

public class NameRegExp {

    public static void main(String[] args) {

        System.out.println("请输入用户名:");
        @SuppressWarnings("resource")
        Scanner scanner = new Scanner(System.in);
        String str = scanner.nextLine();

        String regExp = "^[A-Za-z_@.]{6,10}$";
        Pattern pa = Pattern.compile(regExp);//Pattern 设定正则表达式
        Matcher matcher = pa.matcher(str);//Matcher 利用Pattern对象所包含的正则表达式来作字符匹配工作
        boolean matches = matcher.matches();//flag 判断是否匹配
        System.out.println(matches);

    }
}

结果显示:

16、用户名正则校验_第1张图片

16、用户名正则校验_第2张图片

你可能感兴趣的:(Java编程(Java,Program))