正则表达式实现手机号中间4位数隐藏或者只显示末尾四位数

下面看下正则表达式实现手机号中间4位数隐藏或者只显示末尾四位数

// 匹配手机号首尾,以类似“123****8901”的形式输出
'12345678901'.replace(/(\d{3})\d{4}(\d{4})/, '$1****$2');

此段正则匹配字符串中的连续11位数字,替换中间4位为*号,输出常见的隐匿手机号的格式。

如果要仅得到末尾4位,则可以改成如下形式:

// 匹配连续11位数字,并替换其中的前7位为*号
'15110280327'.replace(/\d{7}(\d{4})/, '*******$1');

ps:下面看下隐藏手机号码中间四位数

1.隐藏手机号码中间四位,变成186****9877

/**
 * 隐藏部分手机号码
 * @param phone
 * @return
 */
 public static String hidePhoneNum(String phone){
 String result = "";
 if (phone != null && !"".equals(phone)) {
  if (isMobileNum(phone)) {
  result = phone.substring(0, 3) + "****" + phone.substring(7);
  }
 }
 return result;
 }

2.判断是否是手机号码

/**
   * 检查是否是电话号码
   *
   * @return
   */
  public static boolean isMobileNum(String mobiles) {
    Pattern p = Pattern
        .compile("^((13[0-9])|(14[0-9])|(15[^4,\\D])|(18[0-9]))\\d{8}$");
    Matcher m = p.matcher(mobiles);
    return m.matches();
  }

总结

以上所述是小编给大家介绍的正则表达式实现手机号中间4位数隐藏或者只显示末尾四位数,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对我们网站的支持!

(0)

相关推荐

  • angularJs自定义过滤器实现手机号信息隐藏的方法

    如下所示: <div ng-app="module" ng-controller="ctrl"> <table border="1" width="600"> <tr> <td>编号</td> <td>姓名</td> <td>手机号</td> </tr> <tr ng-repeat="(k,v

  • C#隐藏手机号、邮箱等敏感信息的实现方法

    Intro 做项目的时候,页面上有一些敏感信息,需要用"*"隐藏一些比较重要的信息,于是打算写一个通用的方法. Let's do it ! Method 1:指定左右字符数量 Method 1.1 中间的*的个数和实际长度有关 /// <summary> /// 隐藏敏感信息 /// </summary> /// <param name="info">信息实体</param> /// <param name=&q

  • C#使用正则表达式隐藏手机号中间四位为*

    使用正则:Regex.Replace(手机号, "(\\d{3})\\d{4}(\\d{4})", "$1****$2"); 效果: 以上所述是小编给大家介绍的C#使用正则表达式隐藏手机号中间四位为*,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的.在此也非常感谢大家对我们网站的支持!

  • mysql sql语句隐藏手机号码中间四位的方法

    第一查询表结构(sys_users): SELECT * from sys_users; 第一种方式:将手机号码中间四位隐藏 select REPLACE(mobile, SUBSTR(mobile,4,4), 'XXXX') from sys_users 第二种方式:将手机号码中间四位隐藏(推荐使用) select insert(mobile, 4, 4, 'XXXX') from sys_users ; 以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们.

  • php实现替换手机号中间数字为*号及隐藏IP最后几位的方法

    本文实例讲述了php实现替换手机号中间数字为*号及隐藏IP最后几位的方法.分享给大家供大家参考,具体如下: $string = "13826589549"; $pattern = "/(\d{3})\d\d(\d{2})/"; $replacement = "\$1****\$3"; print preg_replace($pattern, $replacement, $string); 输出的结果:138****9549 这个匹配结果是我想要的

  • PHP实现手机号码中间四位用星号(*)隐藏的自定义函数分享

    php屏蔽电话号码中间四位: 复制代码 代码如下: Method 1: function hidtel($phone){     $IsWhat = preg_match('/(0[0-9]{2,3}[\-]?[2-9][0-9]{6,7}[\-]?[0-9]?)/i',$phone); //固定电话     if($IsWhat == 1){         return preg_replace('/(0[0-9]{2,3}[\-]?[2-9])[0-9]{3,4}([0-9]{3}[\-]

  • PHP用星号隐藏部份用户名、身份证、IP、手机号等实例

    一.仿淘宝评论购买记录隐藏部分用户名,以下代码亲测可用. 复制代码 代码如下: function cut_str($string, $sublen, $start = 0, $code = 'UTF-8') {     if($code == 'UTF-8')     {         $pa = "/[\x01-\x7f]|[\xc2-\xdf][\x80-\xbf]|\xe0[\xa0-\xbf][\x80-\xbf]|[\xe1-\xef][\x80-\xbf][\x80-\xbf]|\

  • 正则表达式实现手机号中间4位数隐藏或者只显示末尾四位数

    下面看下正则表达式实现手机号中间4位数隐藏或者只显示末尾四位数 // 匹配手机号首尾,以类似"123****8901"的形式输出 '12345678901'.replace(/(\d{3})\d{4}(\d{4})/, '$1****$2'); 此段正则匹配字符串中的连续11位数字,替换中间4位为*号,输出常见的隐匿手机号的格式. 如果要仅得到末尾4位,则可以改成如下形式: // 匹配连续11位数字,并替换其中的前7位为*号 '15110280327'.replace(/\d{7}(\

  • jsp隐藏关键敏感字段信息只显示前后字段的示例

    今天写jsp页面,要求对字段中间部分隐藏,只显示前几位和后几位.搜了一下发现网上大都是隐藏前面指定字段,或者是利用正则表达式隐藏手机号或是身份证.这样的话必须预先知道字段长度,而我不想知道长度只显示前3位和后4位. 没办法,谁让我需要隐藏的字段长度未定呢. 解决方案:1.如果知道字段长度的话可以用正则表达式或是jsp标签库里的fn函数 正则表达式 phone.replaceAll("(\\d{3})\\d{4}(\\d{4})","$1****$2"); 152**

  • python如何将一个四位数反向输出

    目录 将一个四位数反向输出 如何计算逆序的四位数 实现 输出 将一个四位数反向输出 massage = ''' 将一个四位数,反向输出 ''' N = input() print(N[::-1]) # 输入: 1245 # 输出 :5421 如何计算逆序的四位数 输入一个四位数,得到一个新的四位数. 新数的千位数字.百位数字.十位数字和个位数字分别是原数的个位数.十位数.百位数和千位数. 实现 #!/usr/bin/env python3 #-*- coding:utf-8 -*- from f

  • 史上最全的PHP正则表达式(手机号需要加上177-***)

    首先看下正则表达式思维导图: 一.校验数字的表达式  1 数字: ^[0-9]*$ 2 n位的数字: ^\d{n}$ 3 至少n位的数字: ^\d{n,}$ 4 m-n位的数字: ^\d{m,n}$ 5 零和非零开头的数字: ^(0|[1-9][0-9]*)$ 6 非零开头的最多带两位小数的数字: ^([1-9][0-9]*)+(.[0-9]{1,2})?$ 7 带1-2位小数的正数或负数: ^(\-)?\d+(\.\d{1,2})?$ 8 正数.负数.和小数: ^(\-|\+)?\d+(\.\

  • Golang正则表达式判断手机号或身份证方法实例

    目录 一.正则表达式是什么? 二.详细代码 1.判断手机号 2.判断是否为身份证 补充:golang手机号邮箱正则 总结 一.正则表达式是什么? 正则表达式(Regular Expression)是一种文本模式,包括普通字符(例如,a 到 z 之间的字母)和特殊字符(称为"元字符"). 正则表达式使用单个字符串来描述.匹配一系列匹配某个句法规则的字符串. 二.详细代码 1.判断手机号 手机号格式: 第一位必为1的十一位数字 代码如下(示例): // CheckMobile 检验手机号

  • jQuery如何用正则表达式验证手机号、身份证号、中文名称

    数字判断方法:isNaN()函数 test()方法 判断字符串中是否匹配到正则表达式内容,返回的是boolean值 ( true / false ) // 验证中文名称 function isChinaName(name) { var pattern = /^[\u4E00-\u9FA5]{1,6}$/; return pattern.test(name); } // 验证手机号 function isPhoneNo(phone) { var pattern = /^1[34578]\d{9}$

  • java使用正则表达式判断手机号的方法示例

    本文实例讲述了java使用正则表达式判断手机号的方法.分享给大家供大家参考,具体如下: 要更加准确的匹配手机号码只匹配11位数字是不够的,比如说就没有以144开始的号码段, 故先要整清楚现在已经开放了多少个号码段,国家号码段分配如下: 移动:134.135.136.137.138.139.150.151.157(TD).158.159.187.188 联通:130.131.132.152.155.156.185.186 电信:133.153.180.189.(1349卫通) 那么现在就可以正则匹

  • Extjs中的GridPanel隐藏列会显示在menuDisabled中解决方法

    在Extjs中的GridPanel会有这样的情况,隐藏列会显示在menuDisabled中 如下图: 但是这个一般没有什么用处,只是用于后台取值的作用. so 加一个属性:hideable:false就可以搞定了 复制代码 代码如下: { header: "attendanceId", dataIndex: "attendanceId", hideable: false, hidden: true },

  • JS实现隐藏同级元素后只显示JS文件内容的方法

    本文实例讲述了JS实现隐藏同级元素后只显示JS文件内容的方法.分享给大家供大家参考,具体如下: 这里的demo.html文件在打开后会短暂显示与js文件同级的元素后马上隐藏这些元素,并显示同级的demo.js文件内容.具体代码如下: demo.html: <!DOCTYPE html> <html lang="zh-cn"> <head> <meta charset="UTF-8"> <title><

  • 在JSP中使用formatNumber控制要显示的小数位数方法

    先引入标签库 <%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt" %> 比如保留小数点后两位小数: <fmt:formatNumber value="${xxx}" type="number" maxFractionDigits="2"/> 以上这篇在JSP中使用formatNumber控制要显示的小数位数方法

随机推荐