Java正则验证电话,手机,邮箱,日期,金额的方法示例
本文实例讲述了Java正则验证电话,手机,邮箱,日期,金额的方法。分享给大家供大家参考,具体如下:
packagecom.hooypay.tool;
importjava.io.IOException;
importjava.util.regex.Matcher;
importjava.util.regex.Pattern;
publicclassCheck{
//判断电话
publicstaticbooleanisTelephone(Stringphonenumber){
Stringphone="0\\d{2,3}-\\d{7,8}";
Patternp=Pattern.compile(phone);
Matcherm=p.matcher(phonenumber);
returnm.matches();
}
//判断手机号
publicstaticbooleanisMobileNO(Stringmobiles){
Patternp=Pattern.compile("^((13[0-9])|(15[^4,\\D])|(18[0,5-9]))\\d{8}$");
Matcherm=p.matcher(mobiles);
returnm.matches();
}
//判断邮箱
publicstaticbooleanisEmail(Stringemail){
Stringstr="^([a-zA-Z0-9]*[-_]?[a-zA-Z0-9]+)*@([a-zA-Z0-9]*[-_]?[a-zA-Z0-9]+)+[\\.][A-Za-z]{2,3}([\\.][A-Za-z]{2})?$";
Patternp=Pattern.compile(str);
Matcherm=p.matcher(email);
returnm.matches();
}
//判断日期格式:yyyy-mm-dd
publicstaticbooleanisValidDate(StringsDate){
StringdatePattern1="\\d{4}-\\d{2}-\\d{2}";
StringdatePattern2="^((\\d{2}(([02468][048])|([13579][26]))"
+"[\\-\\/\\s]?((((0?[13578])|(1[02]))[\\-\\/\\s]?((0?[1-9])|([1-2][0-9])|"
+"(3[01])))|(((0?[469])|(11))[\\-\\/\\s]?((0?[1-9])|([1-2][0-9])|(30)))|(0?2[\\-\\/\\s]?"
+"((0?[1-9])|([1-2][0-9])))))|(\\d{2}(([02468][1235679])|([13579][01345789]))[\\-\\/\\s]?("
+"(((0?[13578])|(1[02]))[\\-\\/\\s]?((0?[1-9])|([1-2][0-9])|(3[01])))|(((0?[469])|(11))[\\-\\/\\s]?"
+"((0?[1-9])|([1-2][0-9])|(30)))|(0?2[\\-\\/\\s]?((0?[1-9])|(1[0-9])|(2[0-8]))))))";
if((sDate!=null)){
Patternpattern=Pattern.compile(datePattern1);
Matchermatch=pattern.matcher(sDate);
if(match.matches()){
pattern=Pattern.compile(datePattern2);
match=pattern.matcher(sDate);
returnmatch.matches();
}else{
returnfalse;
}
}
returnfalse;
}
//验证金额
publicstaticbooleanisNumber(Stringstr)
{
java.util.regex.Patternpattern=java.util.regex.Pattern.compile("^(([1-9]{1}\\d*)|([0]{1}))(\\.(\\d){0,2})?$");//判断小数点后一位的数字的正则表达式
java.util.regex.Matchermatch=pattern.matcher(str);
if(match.matches()==false)
{
returnfalse;
}
else
{
returntrue;
}
}
}
PS:这里再为大家提供2款非常方便的正则表达式工具供大家参考使用:
JavaScript正则表达式在线测试工具:
http://tools.jb51.net/regex/javascript
正则表达式在线生成工具:
http://tools.jb51.net/regex/create_reg
希望本文所述对大家java程序设计有所帮助。