截止2014年9月前已开放和未开放的号码段如下图所示:
那么相对应的判断手机号码的正则表达式如下:
public static boolean isMobilePhone(String phone) {//
Pattern pattern = Pattern
.compile("^((13[0-9])|(14[5,7])|(15[^4,\\D])|(17[6-8])|(18[0-9]))\\d{8}$");
Matcher matcher = pattern.matcher(phone);
return matcher.matches();
}
邮箱验证:
String reg = "[a-zA-Z0-9_]+@[a-zA-Z0-9]+(\\.[a-zA-Z]+){1,3}";
Pattern p = Pattern.compile(reg);
Matcher m= p1.matcher("输入的可能包含邮箱的字符串参数");
while(m.find())
{
System.out.println("输出为" + m.group());
}
http://bbs.csdn.net/topics/390402460
这样得出的结果中的邮箱有可能不是正确的存在的真实有效的邮箱,所以最好能经过二次验证,参考如下博文:
http://blog.sina.com.cn/s/blog_4b5bc011010156bm.html
上面的链接博文涉及到对邮箱服务器的验证,但里面有一个jar包下载不了,所以我也就没有尝试它的可行性,先贴出来,这个网站https://verify-email.org可以在线验证邮箱服务器的有效性