Java正則替換手機(jī)號代碼實例
在日常生活中,我們經(jīng)常會遇到將一個手機(jī)號的4-7位字符串用正則表達(dá)式替換為為星號“*”。這是出于對安全性和保護(hù)客戶隱私的考慮將程序設(shè)計成這樣的。下面我們就來看看具體代碼。
package Test0914;
public class Mobile {
public static void main(String[] args) {
String mobile = "13856984571";
mobile = mobile.replaceAll("(\\d{3})\\d{4}(\\d{4})", "$1****$2");
System.out.println(mobile);
}
}
輸出結(jié)果如下:
138****4571
這只是正則表達(dá)式的一個簡單用法,下面我們拓展一下其他相關(guān)用法及具體介紹。
1,簡單匹配
在java中字符串可以直接使用
String.matches(regex)
注意:正則表達(dá)式匹配的是所有的字符串
2,匹配并查找
找到字符串中符合正則表達(dá)式的subString,結(jié)合Pattern Matcher 如下實例取出尖括號中的值
String str = "abcdefefg";
String cmd = "<[^\\s]*>";
Pattern p = Pattern.compile(cmd);
Matcher m = p.matcher(str);
if(m.find()){
System.out.println(m.group());
}else{
System.out.println("not found");
}
此時還可以查找出匹配的多個分組,需要在正則表達(dá)式中添加上括號,一個括號對應(yīng)一個分組
String str="xingming:lsz,xingbie:nv";
String cmd="xingming:([a-zA-Z]*),xingbie:([a-zA-Z]*)"'
Pattern p = Pattern.compile(cmd);
Matcher m = p.matcher(str);
if(m.find()){
System.out.println("姓名:"+m.group(1));
System.out.println("性別:"+m.group(2));
}else{
System.out.println("not found");
}
3,查找并替換,占位符的使用
String str= “abcaabadwewewe”;
String str2 = str.replaceAll("([a])([a]|[d])","*$2")
str2為:abc*ab*dwewewe
將a或d前面的a替換成*,$為正則表達(dá)式中的占位符。
總結(jié):
以上就是本文關(guān)于正則表達(dá)式替換手機(jī)號中間四位的具體代碼和正則表達(dá)式的一些相關(guān)用法,希望對大家有所幫助。
相關(guān)文章
eclipse導(dǎo)入工程報錯問題項目或者文件有紅叉的解決方案
這篇文章主要介紹了eclipse導(dǎo)入工程報錯問題項目或者文件有紅叉的解決方案,本文通過圖文并茂的形式給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2020-05-05
SpringBoot實現(xiàn)賬號登錄錯誤次數(shù)的限制和鎖定功能
本文介紹了如何使用SpringBoot和Redis實現(xiàn)賬號登錄錯誤次數(shù)限制和鎖定功能,通過自定義注解和AOP切面,結(jié)合配置文件靈活設(shè)置最大嘗試次數(shù)和鎖定時長,感興趣的朋友跟隨小編一起看看吧2024-12-12
Springboot從配置文件properties讀取字符串亂碼的解決
這篇文章主要介紹了Springboot從配置文件properties讀取字符串亂碼的解決方案,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2022-02-02
@Valid注解的作用及@Valid注解與@Validated的區(qū)別
這篇文章主要介紹了@Valid注解的作用及@Valid注解與@Validated的區(qū)別,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2022-08-08
Java實現(xiàn)導(dǎo)出word表格的示例詳解
這篇文章主要為大家詳細(xì)介紹了如何利用Java語言導(dǎo)出word表格功能,文中的示例代碼講解詳細(xì),具有一定的借鑒價值,需要的小伙伴可以參考一下2022-12-12
springcloud教程之zuul路由網(wǎng)關(guān)的實現(xiàn)
這篇文章主要介紹了springcloud教程之zuul路由網(wǎng)關(guān)的實現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-02-02
SpringBoot使用Scheduling實現(xiàn)定時任務(wù)的示例代碼
Spring Boot提供了一種方便的方式來實現(xiàn)定時任務(wù),即使用Spring的@Scheduled注解,通過在方法上添加@Scheduled注解,我們可以指定方法在何時執(zhí)行,本文我們就給大家介紹一下SpringBoot如何使用Scheduling實現(xiàn)定時任務(wù),需要的朋友可以參考下2023-08-08
Spring Boot監(jiān)聽Redis Key失效事件實現(xiàn)定時任務(wù)的示例
這篇文章主要介紹了Spring Boot監(jiān)聽Redis Key失效事件實現(xiàn)定時任務(wù)的示例,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-04-04

