package denglu;
import java.util.Scanner;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class denglu {
public static void main(String[] args) {
System.out.println("用户名:");
//scanner用于读取输入
Scanner scan = new Scanner(System.in);
String userName = scan.nextLine();
System.out.println("密码:");
Scanner scan1 = new Scanner(System.in);
String userPwd = scan1.nextLine();
//——regex正则规则
String USERNAME_REGEX = "^(([0-9])|([a-zA-Z])|[A-Za-z0-9]){3,12}$";
Pattern USERNAME_PATTERN = Pattern.compile(USERNAME_REGEX);
String USERPWD_REGEX ="^[A-Za-z](([0-9])|([a-zA-Z])|[A-Za-z0-9]){5,17}$";
Pattern USERPWD_PATTERN = Pattern.compile(USERPWD_REGEX);
if (null == userName || "".equals(userName.trim())) {
System.out.println("用户名不能为空");
}
Matcher userNameMatcher = USERNAME_PATTERN.matcher(userName);
if (!userNameMatcher.matches()) {
System.out.println("用户名格式错误");
}
if (null == userPwd || "".equals(userPwd.trim())) {
System.out.println("密码不能为空");
}
Matcher userPwdMatcher = USERPWD_PATTERN.matcher(userPwd);
if (!userPwdMatcher.matches()) {
System.out.println("密码格式错误");
}
}
}
正则表达式规则: