使用 spring 引导的自定义移动验证器
Custom mobile validator using spring boot
大家好,我正在尝试创建自定义移动验证器。但每次正则表达式是否为真,它都会返回假。你能帮我吗
public class MobileValidator implements ConstraintValidator<MobileValidation, String> {
public boolean isValid(String value, ConstraintValidatorContext context) {
Pattern regex = Pattern.compile("^[6-9]\d{9}$");
Matcher match = regex.matcher(value);
if(value != null && !value.equals(match.matches())){
System.out.println(context);
return false;
}
return true;
}
match.matches()
returns 表示模式是否匹配的布尔值;你不需要将它与结果进行比较,你应该只使用布尔值:
public boolean isValid(String value, ConstraintValidatorContext context) {
Pattern regex = Pattern.compile("^[6-9]\d{9}$");
Matcher match = regex.matcher(value);
if (match.matches()) {
System.out.println(context);
return false;
}
return true;
}
public boolean isValid(String value, ConstraintValidatorContext context) {
Pattern regex = Pattern.compile("^[6-9]\d{9}$");
Matcher match = regex.matcher(value);
if (StringUtil.isNotBlank(value) && match.matches()) {
System.out.println(context);
return false;
}
return true;
}
函数Pattern.matcher不是return值字符串,请使用:
public boolean isValid(String value, ConstraintValidatorContext context) {
模式 pattern = Pattern.compile("^[6-9]\d{9}$");
return null != value && pattern.matcher(value).matches();
}
大家好,我正在尝试创建自定义移动验证器。但每次正则表达式是否为真,它都会返回假。你能帮我吗
public class MobileValidator implements ConstraintValidator<MobileValidation, String> {
public boolean isValid(String value, ConstraintValidatorContext context) {
Pattern regex = Pattern.compile("^[6-9]\d{9}$");
Matcher match = regex.matcher(value);
if(value != null && !value.equals(match.matches())){
System.out.println(context);
return false;
}
return true;
}
match.matches()
returns 表示模式是否匹配的布尔值;你不需要将它与结果进行比较,你应该只使用布尔值:
public boolean isValid(String value, ConstraintValidatorContext context) {
Pattern regex = Pattern.compile("^[6-9]\d{9}$");
Matcher match = regex.matcher(value);
if (match.matches()) {
System.out.println(context);
return false;
}
return true;
}
public boolean isValid(String value, ConstraintValidatorContext context) {
Pattern regex = Pattern.compile("^[6-9]\d{9}$");
Matcher match = regex.matcher(value);
if (StringUtil.isNotBlank(value) && match.matches()) {
System.out.println(context);
return false;
}
return true;
}
函数Pattern.matcher不是return值字符串,请使用:
public boolean isValid(String value, ConstraintValidatorContext context) { 模式 pattern = Pattern.compile("^[6-9]\d{9}$");
return null != value && pattern.matcher(value).matches(); }