java正则手机号_Java正则替换手机号代码实例
在日常生活中,我們經常會遇到將一個手機號的4-7位字符串用正則表達式替換為為星號“*”。這是出于對安全性和保護客戶隱私的考慮將程序設計成這樣的。下面我們就來看看具體代碼。
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);
}
}
輸出結果如下:
138****4571
這只是正則表達式的一個簡單用法,下面我們拓展一下其他相關用法及具體介紹。
1,簡單匹配
在java中字符串可以直接使用
String.matches(regex)
注意:正則表達式匹配的是所有的字符串
2,匹配并查找
找到字符串中符合正則表達式的subString,結合Pattern Matcher 如下實例取出尖括號中的值
String str = "abcdefefg";
String cmd = "";
Pattern p = Pattern.compile(cmd);
Matcher m = p.matcher(str);
if(m.find()){
System.out.println(m.group());
}else{
System.out.println("not found");
}
此時還可以查找出匹配的多個分組,需要在正則表達式中添加上括號,一個括號對應一個分組
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替換成*,$為正則表達式中的占位符。
總結:
以上就是本文關于正則表達式替換手機號中間四位的具體代碼和正則表達式的一些相關用法,希望對大家有所幫助。
總結
以上是編程之家為你收集整理的Java正則替換手機號代碼實例全部內容,希望文章能夠幫你解決Java正則替換手機號代碼實例所遇到的程序開發問題。
如果覺得編程之家網站內容還不錯,歡迎將編程之家網站推薦給程序員好友。
本圖文內容來源于網友網絡收集整理提供,作為學習參考使用,版權屬于原作者。
如您喜歡交流學習經驗,點擊鏈接加入交流1群:1065694478(已滿)交流2群:163560250
總結
以上是生活随笔為你收集整理的java正则手机号_Java正则替换手机号代码实例的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 炉温曲线系统MATLAB仿真,SMT炉温
- 下一篇: 国产PLC应该学习一下国产变频器