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);

    }
}

结果显示:

这里写图片描述

这里写图片描述

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值