背景
在开发过程中,前端会做例如电话号码、邮箱等等之类的正则校验,为了保持数据的一致性,后端也要做类似的正则校验。
java代码示例
import java.util.regex.Pattern;
public boolean isValid(String value) {
//先做个非空校验
if (StringUtil.isNullOrEmpty(value)) {
return false;
} else {
//中英文括号和-_.(常见名称允许输入的规则)
String regex = "^[\\u4e00-\\u9fa5a-zA-Z\\d\\(\\)()\\-\\_\\.]+$";
if (Pattern.matches(regex,value)) {
return true;
}
return false;
}
}
常用的正则
//中英文(常见姓名允许输入的规则)
String regex = "^[\\u4e00-\\u9fa5a-zA-Z]+$";
//英文数字括号$¥和-_.(常见编码允许输入的规则)
String regex = "^[a-zA-Z\\d\\(\\)()\\-\\_\\.\\s$¥]+$";
补充:
String自己就有正则匹配的方法,为.matchs(“正则表达式”)
方法。其实这个方法底层也是调用的Pattern.matches(regex,value)
方法,这个方法的返回值也是boolean类型的。