import org.apache.commons.lang3.StringUtils;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
/**
* 校验手机号
*
* @param phone 手机号
* @return 是否合格
*/
public String checkPhone(String phone) {
String regex = "^[1]([3-9])[0-9]{9}$";
if (StringUtils.isEmpty(phone)) return "手机号为空";
else {
if (phone.length() != 11) return "手机号长度错误";
else {
Pattern p = Pattern.compile(regex);
Matcher m = p.matcher(phone);
boolean isMatch = m.matches();
if (isMatch) return null;
else return "手机号格式错误";
}
}
}
/**
* 校验邮箱
*
* @param email 邮箱
* @return 是否合格
*/
public boolean checkEmail(String email) {
// 判断是否为空邮箱
int k = 0;
if (email == null) return false;
/*
单引号引的数据 是char类型的
双引号引的数据 是String类型的
单引号只能引一个字符
而双引号可以引0个及其以上
*/
// 判断是否有仅有一个@且不能在开头或结尾
if (email.indexOf("@") > 0 && email.indexOf('@') == email.lastIndexOf('@') &&
email.indexOf('@') < email.length() - 1)
k++;
// 判断"@"之后必须有"."且不能紧跟
if (email.indexOf('.', email.indexOf('@')) > email.indexOf('@') + 1) k++;
// 判断"@"之前或之后不能紧跟"."
if (email.indexOf('.') < email.indexOf('@') - 1 || email.indexOf('.') > email.indexOf('@') + 1) k++;
// @之前要有6个字符
if (email.indexOf('@') > 5) k++;
if (email.endsWith("com") || email.endsWith("org") || email.endsWith("cn") || email.endsWith("net")) k++;
return k == 5;
}
网友评论