import java.util.regex.*;
class RegexExample1{
public static void main(String args[]){
String content = "I am noob " +
“from runoob.com.”;
String pattern = “.runoob.”;
boolean isMatch = Pattern.matches(pattern, content);
System.out.println("字符串中是否包含了 ‘runoob’ 子字符串? " + isMatch);
}
}
实例输出结果为:
字符串中是否包含了 ‘runoob’ 子字符串? true
RexUtils
- checkIdCard(String idCard)
验证身份证号码
- checkMobile(String mobile)
验证手机号码(支持国际格式,+86135xxxx…(中国内地),+00852137xxxx…(中国香港))
-
boolean checkPhone(String phone)
-
checkEmail
检验是否是电子邮箱。格式是数字,字母,下划线,但不含有 -。
- checkDigit
验证是否是整数
- checkDecimals
验证整数和浮点数
- checkBlankSpace
检验是否是空白字符
- checkChinese
检验是否是中文
- checkBirthday
验证日期(日期,格式:1992-09-03,或1992.09.03)
- 验证 URL 地址
格式:http://blog.csdn.net/gdutxiaoxu/article/details/71732642或 http://www.csdn.net:80
- checkIpAddress
匹配 IP 地址
- phoneNoHide
手机号码,中间4位星号替换
- cardIdHide
银行卡号,保留最后4位,其他星号替换
RexUtisl 工具类源码
/**
-
正则工具类-http://blog.csdn.net/xyang81/article/details/7706408
-
提供验证邮箱、手机号、电话号码、身份证号码、数字等方法
*/
public final class RegexUtil {
/**
-
手机号码,中间4位星号替换
-
@param phone 手机号
-
@return 星号替换的手机号
*/
public static String phoneNoHide(String phone) {
// 括号表示组,被替换的部分$n表示第n组的内容
// 正则表达式中,替换字符串,括号的意思是分组,在replace()方法中,
// 参数二中可以使用$n(n为数字)来依次引用模式串中用括号定义的字串。
// “(\d{3})\d{4}(\d{4})”, "$1****$2"的这个意思就是用括号,
// 分为(前3个数字)中间4个