java 正则工具_java实现的正则工具类

本文实例讲述了java实现的正则工具类。分享给大家供大家参考。具体如下:

这里实现的正则工具类适用于:正则电话号码、邮箱、QQ号码、QQ密码、手机号

java代码如下:

package com.zhanggeng.contact.tools;

/**

* RegexTool is used to regex the string ,such as : phone , qq , password , email .

*

* @author ZHANGGeng

* @version v1.0.1

* @since JDK5.0

*

*/

public class RegexTool {

/**

*

* @param phoneNum 传入的参数仅仅是一个电话号码时,调用此方法

* @return 如果匹配正确,return true , else return else

*/

//如果传进来的是电话号码,则对电话号码进行正则匹配

public static boolean regexPhoneNumber(String phoneNum){

//电话号码匹配结果

boolean isPhoneNum_matcher = phoneNum.matches("1[358]\\d{9}");

//如果isPhoneNum_matcher is true , 则return true , else return false

if(isPhoneNum_matcher)

return true;

return false;

}

/**

*

* @param email 传入的参数仅仅是一个邮箱地址时,调用此方法

* @return 如果匹配正确,return true , else return false

*/

//如果传进来的是邮箱地址,则对邮箱进行正则匹配

public static boolean regexEmailAddress(String email){

//邮箱匹配结果

boolean isEmail_matcher = email.matches("[a-zA-Z_0-9]+@[a-zA-Z0-9]+(\\.[a-zA-Z]{2,}){1,3}");

//如果isEmail_matcher value is true , 则 return true , else return false

if(isEmail_matcher)

return true;

return false;

}

/**

*

* @param phoneNum 传入的电话号码

* @param email 传入的邮箱地址

* @return 如果匹配正确,return true , else return false

*/

public static boolean regexEmailAddressAndPhoneNum(String phoneNum , String email){

//电话号码匹配结果

boolean isPhoneNum_matcher = phoneNum.matches("1[358]\\d{9}");

//邮箱匹配结果

boolean isEmail_matcher = email.matches("[a-zA-Z_0-9]+@[a-zA-Z0-9]+(\\.[a-zA-Z]{2,}){1,3}");

//matcher value is true , 则 return true , else return false

if(isEmail_matcher && isPhoneNum_matcher){

return true;

}

return false;

}

/**

*

* @param qqNum 传入的QQ

* @return 如果匹配正确,return true, else return false

*/

public static boolean regexQQNumber(String qqNum){

//QQ号匹配结果

boolean isQQNum_matcher = qqNum.matches("[1-9]\\d{2,11}");

if(isQQNum_matcher)

return true;

return false;

}

/**

*

* @param pwd 传入的是 密码

* @return 如果匹配正确,满足密码规则,return true, else return false

*/

public static boolean regexPassWord(String pwd){

//密码匹配结果

boolean isPassWord_matcher = pwd.matches("[0-9a-zA-Z_@$@]{6,12}");

if(isPassWord_matcher)

return true;

return false;

}

}

希望本文所述对大家的java程序设计有所帮助。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
前言:本资源来自于javaeye,原资源链接地址:http://www.javaeye.com/topic/67398 原文如下: 以前写了一个java规表达式的java工具类,分享一下,有用到的欢迎下载使用。 如果你有常用的定义好的,且测试通过的规表达式,欢迎跟贴,也让我享用一下 . 类中用到了 jakarta-oro-2.0.jar 包,请大家自己在 apache网站下下载 在这是junit测试单元类我就不提交了,在main()方法中有几个小测试,有兴趣自己玩吧. 这个工具类目前主要有25种规表达式(有些不常用,但那时才仔细深入的研究了一下规,写上瘾了,就当时能想到的都写了): 1.匹配图象; 2 匹配email地址; 3 匹配匹配并提取url ; 4 匹配并提取http ; 5.匹配日期 6 匹配电话; 7 匹配身份证 8 匹配邮编代码 9. 不包括特殊字符的匹配 (字符串中不包括符号 数学次方号^ 单引号' 双引号" 分号; 逗号, 帽号: 数学减号- 右尖括号> 左尖括号 0) 12 匹配整数 13 匹配非整数(负整数 + 0) 14 匹配负整数; 15. 匹配整数 ; 16 匹配非负浮点数(浮点数 + 0) 17. 匹配浮点数 18 匹配非浮点数(负浮点数 + 0) 19 匹配负浮点数; 20 .匹配浮点数; 21. 匹配由26个英文字母组成的字符串; 22. 匹配由26个英文字母的大写组成的字符串 23 匹配由26个英文字母的小写组成的字符串 24 匹配由数字和26个英文字母组成的字符串; 25 匹配由数字、26个英文字母或者下划线组成的字符串; java源码: /* * Created on 2005-4-15 * * Summary of regular-expression constructs 则表达式结构简介: * Construct Matches * Characters 字符: * x The character x x 字符 x * \\ The backslash character \\ 反斜杠 * \0n The character with octal value 0n (0 <= n <= 7) \0n 十进制数 (0 <= n <= 7) * \0nn The character with octal value 0nn (0 <= n <= 7) \0nn 十进制数 0nn (0 <= n <= 7) * \0mnn The character with octal value 0mnn (0 <= m <= 3, 0 <= n <= 7) \0mnn 十进制数 0mnn (0 <= m <= 3, 0 <= n <= 7) * \xhh The character with hexadecimal value 0xhh \xhh 十六进制数 0x

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值