概要
正则表达式使用单个字符串来描述、匹配一系列符合某个句法规则的字符串,通常被用来检索、替换那些符合某个模式(规则)的文本。
正则表达式是对字符串(包括普通字符(例如,a到z之间的字母)和特殊字符(称为“元字符”))操作的一种逻辑公式,就是用事先定义好的一些特定字符以及这些特定字符的组合,组成一个“规则字符串”,这个“规则字符串”用来表达对字符串的一种过滤逻辑。
代码案例
- 定义好一个工具类
/**
* 参数验证类
*/
public class ValidUtils {
//邮箱格式的验证
public static boolean validEmail(String userEmail) {
Pattern p = Pattern.compile("[a-zA-Z0-9]+@[A-Za-z0-9]+\\.[a-z0-9]");
Matcher m = p.matcher(userEmail);
if(m.find()){
return true;
} else {
return false;
}
}
//验证日志级别枚举值
public static boolean isValidLogLevel(String logLevel) {
for (LogLevelEnum level: LogLevelEnum.values()) {
if (level.toString().equalsIgnoreCase(logLevel)) {
return true;
}
}
return false;
}
}
- 用到的枚举类型
public enum LogLevelEnum {
INFO,WARN,DEBUG,ERROR
}
- 写测试类验证其正确性
public class TestUtils {
public static void main(String[] args) {
//验证邮箱的格式是否正确
String mail = "260152888@qq.com";
boolean b = ValidUtils.validEmail(mail);
if (b) {
System.out.println("您输入的邮箱格式正确,可以使用!");
}
//验证日志级别的设置
String logLevel = "error";
boolean validLogLevel = ValidUtils.isValidLogLevel(logLevel);
if (validLogLevel){
System.out.println("您设置的的日志级别正确,可以使用!");
}
}
}