Java正则验证电话,手机,邮箱,日期,金额的方法示例
作者:小木v587 时间:2021-06-25 22:37:46
本文实例讲述了Java正则验证电话,手机,邮箱,日期,金额的方法。分享给大家供大家参考,具体如下:
package com.hooypay.tool;
import java.io.IOException;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class Check {
// 判断电话
public static boolean isTelephone(String phonenumber) {
String phone = "0\\d{2,3}-\\d{7,8}";
Pattern p = Pattern.compile(phone);
Matcher m = p.matcher(phonenumber);
return m.matches();
}
// 判断手机号
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);
return m.matches();
}
// 判断邮箱
public static boolean isEmail(String email) {
String str = "^([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})?$";
Pattern p = Pattern.compile(str);
Matcher m = p.matcher(email);
return m.matches();
}
// 判断日期格式:yyyy-mm-dd
public static boolean isValidDate(String sDate) {
String datePattern1 = "\\d{4}-\\d{2}-\\d{2}";
String datePattern2 = "^((\\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)) {
Pattern pattern = Pattern.compile(datePattern1);
Matcher match = pattern.matcher(sDate);
if (match.matches()) {
pattern = Pattern.compile(datePattern2);
match = pattern.matcher(sDate);
return match.matches();
} else {
return false;
}
}
return false;
}
//验证金额
public static boolean isNumber(String str)
{
java.util.regex.Pattern pattern=java.util.regex.Pattern.compile("^(([1-9]{1}\\d*)|([0]{1}))(\\.(\\d){0,2})?$"); // 判断小数点后一位的数字的正则表达式
java.util.regex.Matcher match=pattern.matcher(str);
if(match.matches()==false)
{
return false;
}
else
{
return true;
}
}
}
PS:这里再为大家提供2款非常方便的正则表达式工具供大家参考使用:
JavaScript正则表达式在线测试工具:
http://tools.jb51.net/regex/javascript
正则表达式在线生成工具:
http://tools.jb51.net/regex/create_reg
希望本文所述对大家java程序设计有所帮助。
标签:Java,正则验证
![](/images/zang.png)
![](/images/jiucuo.png)
猜你喜欢
详解Java数据结构和算法(有序数组和二分查找)
2023-04-08 13:38:07
Dubbo实现分布式日志链路追踪
2023-08-23 21:00:54
![](https://img.aspxhome.com/file/2023/2/58292_0s.png)
基于mybatis逆向工程的使用步骤详解
2022-10-28 09:27:26
深入理解Java基础之try-with-resource语法糖
2022-12-03 08:17:43
Java数据结构之双向链表图解
2023-02-07 10:07:22
![](https://img.aspxhome.com/file/2023/4/88194_0s.jpg)
nacos中的配置使用@Value注解获取不到值的原因及解决方案
2023-11-29 13:43:00
![](https://img.aspxhome.com/file/2023/9/60769_0s.jpg)
Java编程Webservice指定超时时间代码详解
2023-11-02 23:17:12
Java NIO:浅析IO模型_动力节点Java学院整理
2022-01-17 17:07:38
![](https://img.aspxhome.com/file/2023/8/65178_0s.png)
Java实现解析JSON大文件JsonReader工具详解
2023-08-21 21:13:14
java9版本特性资源自动关闭的语法增强
2023-10-30 23:35:24
![](https://img.aspxhome.com/file/2023/9/63449_0s.png)
Java数据结构之ArrayList从顺序表到实现
2022-06-14 00:53:25
![](https://img.aspxhome.com/file/2023/1/68771_0s.png)
关于SpringCloud的微服务结构及微服务远程调用
2021-11-06 20:11:45
![](https://img.aspxhome.com/file/2023/8/77088_0s.png)
Spring Boot 实现配置文件加解密原理
2023-11-23 17:48:46
![](https://img.aspxhome.com/file/2023/4/59584_0s.jpg)
深入了解java内存分配和回收策略
2023-02-27 15:16:58
解决CollectionUtils.isNotEmpty()不存在的问题
2021-11-15 12:03:17
Maven构建生命周期详细介绍
2023-04-06 13:02:59
java快速生成数据库文档详情
2023-11-10 05:25:20
![](https://img.aspxhome.com/file/2023/3/59363_0s.png)
mybatis if传入字符串数字踩坑记录及解决
2022-07-18 00:41:18
struts2如何使用拦截器进行用户权限控制实例
2023-02-23 18:14:15
![](https://img.aspxhome.com/file/2023/7/81247_0s.png)
利用Java写一个学生管理系统
2023-09-24 17:06:54
![](https://img.aspxhome.com/file/2023/1/61071_0s.jpg)