正则表达式在java开发中的应用

2020-02-11  本文已影响0人  善思者_tin

一、概述

凡事要学会总结,用到了正则就要统一总结起来。此外,当应用了一个知识点时,也要学会总结其的更广泛或者更高级的应用。

二、脱敏操作

手机号码脱敏:

//脱敏手机号码中间四位

mobile.replaceAll("(\\d{3})\\d{4}(\\d{4})","$1****$2");

三、手机号码格式匹配

phone.matches("^1(?:3\\d|4[4-9]|5[0-35-9]|6[67]|7[013-8]|8\\d|9\\d)\\d{8}$")

四、身份证校验

/**

* 15位身份证号码的基本数字和位数验校

*

* @param idcard

* @return

*/

public boolean is15Idcard(String idcard) {

return idcard ==null ||"".equals(idcard) ?false : Pattern.matches(

"^[1-9]\\d{7}((0\\d)|(1[0-2]))(([0|1|2]\\d)|3[0-1])\\d{3}$",

idcard);

}

/**

* 18位身份证号码的基本数字和位数验校

* @param idcard

* @return

*/

public boolean is18Idcard(String idcard) {

return Pattern

.matches(

"^[1-9]\\d{5}[1-9]\\d{3}((0\\d)|(1[0-2]))(([0|1|2]\\d)|3[0-1])\\d{3}([\\d|x|X]{1})$",

idcard);

}

五、数字校验

public boolean isDigital(String str) {

return str ==null ||"".equals(str) ?false : str.matches("^[0-9]*$");

}

总结:正则表达式一般用于字符串匹配, 字符串查找和字符串替换。在工作学习中灵活运用正则表达式处理字符串能够大幅度提高效率。

上一篇 下一篇

猜你喜欢

热点阅读