时间:2021-05-20
在日常生活中,我们经常会遇到将一个手机号的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 = "<[^\\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");}此时还可以查找出匹配的多个分组,需要在正则表达式中添加上括号,一个括号对应一个分组
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替换成*,$为正则表达式中的占位符。
总结:
以上就是本文关于正则表达式替换手机号中间四位的具体代码和正则表达式的一些相关用法,希望对大家有所帮助。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
本文实例讲述了javascript正则表达式使用replace()替换手机号的方法。分享给大家供大家参考。具体实现方法如下:复制代码代码如下:javascrip
一、JavaScript替换手机号中间4位//匹配手机号首尾,以类似“123****8901”的形式输出'12345678901'.replace(/(\d{3
本文实例讲述了java实现的正则工具类。分享给大家供大家参考。具体如下:这里实现的正则工具类适用于:正则电话号码、邮箱、QQ号码、QQ密码、手机号java代码如
本文实例讲述了php实现替换手机号中间数字为*号及隐藏IP最后几位的方法。分享给大家供大家参考,具体如下:?1234$string="13826589549";
本文实例讲述了Python实现随机生成手机号及正则验证手机号的方法。分享给大家供大家参考,具体如下:依据根据2017年10月份最新的手机号正则进行编码,正则如下