/**
* 验证手机号是否合法
*
* @param mobiles
* 手机号码
* @return
*/
public static boolean isMobileNO(String mobiles) {
Pattern p = Pattern
.compile("^((13[0-9])|(15[^4,\\D])|(18[0,5-9]))\\d{8}$");
Matcher m = p.matcher(mobiles);
System.out.println(m.matches() + "---");
return m.matches();
}
/**
* @author zml2015
* @Email zhengmingliang911@gmail.com
* @Time 2017年4月24日 上午11:51:18
* @Description <p>判断是不是网址 </P>
* @param url
* @return
*/
public static boolean isWebUrl(String url) {
String patternString = "^((https|http|ftp|rtsp|mms)?://)"
+ "?(([0-9a-z_!~*'().&=+$%-]+: )?[0-9a-z_!~*'().&=+$%-]+@)?" //ftp的user@
+ "(([0-9]{1,3}\\.){3}[0-9]{1,3}" // IP形式的URL- 199.194.52.184
+ "|" // 允许IP和DOMAIN(域名)
+ "([0-9a-z_!~*'()-]+\\.)*" // 域名- www.
+ "([0-9a-z][0-9a-z-]{0,61})?[0-9a-z]\\." // 二级域名
+ "[a-z]{2,6})" // first level domain- .com or .museum
+ "(:[0-9]{1,4})?" // 端口- :80
+ "((/?)|" // a slash isn't required if there is no file name
+ "(/[0-9a-z_!~*'().;?:@&=+$,%#-]+)+/?)$";
Pattern p = Pattern
.compile(patternString);
Matcher m = p.matcher(url);
System.out.println(m.matches() + "---");
return m.matches();
}
/**
* 校验邮箱是否合法
*
* @param s
* 传入的邮箱字符串
* @return
*/
public static boolean isEmail1(String s) {
Pattern pattern = Pattern
.compile("^([a-zA-Z0-9_\\-\\.]+)@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.)|(([a-zA-Z0-9\\-]+\\.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(\\]?)$");
Matcher matcher = pattern.matcher(s);
return matcher.matches();
}
/**
* Android 工具包自带验证Email方法
*
* @param email
* @return
*/
public static boolean isEmail2(String email) {
return EMAIL_ADDRESS.matcher(email).matches();
}
/**
* @author zml2015
* @Time 2017年3月13日 下午6:48:31
* @Description <p> 是否全是中文 </p>
* @param text
* @return {@code true}全是中文 <br> {@code false} 不全是中文、或不是中文
*/
public static boolean isChinessOnly(String text) {
return PATTERN_IS_CHICHNESS.matcher(text).matches();
}
/**
* @author zml2015
* @Time 2017年3月13日 下午7:00:37
* @Description <p>判断是否是身份证号 </p>
* @param idCardNum 身份证号
* @return {@code true}符合身份证号验证 <br> {@code false} 不符合身份证号验证
*/
public static boolean isIdCardNumber(String idCardNum){
return PATTERN_IS_ID_CARD_NUMBER_15.matcher(idCardNum).matches()||PATTERN_IS_ID_CARD_NUMBER_18.matcher(idCardNum).matches();
}
// 引用于Android.util.Patterns
public static final Pattern EMAIL_ADDRESS = Pattern
.compile("[a-zA-Z0-9\\+\\.\\_\\%\\-\\+]{1,256}" + "\\@"
+ "[a-zA-Z0-9][a-zA-Z0-9\\-]{0,64}" + "(" + "\\."
+ "[a-zA-Z0-9][a-zA-Z0-9\\-]{0,25}" + ")+");
/**
* @author zml2015
* @Time 2017年3月13日 下午5:50:29
* @Description <p>匹配中文 </p>
*/
public static final Pattern PATTERN_IS_CHICHNESS = Pattern
.compile("^[\\u4e00-\\u9fa5]{0,}$");
/**
* @author zml2015
* @Time 2017年3月13日 下午6:58:08
* @Description <p> 15位身份证号验证</p>
*/
public static final Pattern PATTERN_IS_ID_CARD_NUMBER_15 = Pattern
.compile("^[1-9]\\d{7}((0\\d)|(1[0-2]))(([0|1|2]\\d)|3[0-1])\\d{3}$");
/**
* @author zml2015
* @Time 2017年3月13日 下午6:58:13
* @Description <p>18位身份证号验证 </p>
*/
public static final Pattern PATTERN_IS_ID_CARD_NUMBER_18 = Pattern
.compile("^[1-9]\\d{5}[1-9]\\d{3}((0\\d)|(1[0-2]))(([0|1|2]\\d)|3[0-1])\\d{3}([0-9]|X)$");
Q.E.D.