怎么把手机号变成这样的格式??135********? 用JS ,正则怎么写??当然,这不一定用正则,刚学正则,想练习一下而已JSJavaScript正则

解决方案 »

  1.   

    /^((\(\d{2,3}\))|(\d{3}\-))?1[3,8,5]{1}\d{9}$/
    验证13 18 15开头的手机号
      

  2.   

    var r = /^0?1[3458]\d{9}$/,
    s = '13512345678';
    s = s.replace(r, function($){
    return $.replace(/(\d+)\d{8}/, "$1"+Array(9).join('*'))
    })
    alert(s)参考下
      

  3.   

    var s='13512345678';
    alert(s.replace(/^(\d{3})\d+$/,'$1********'));
      

  4.   

    var reg=new RegExp("(13[0,5]|18[6,9])(\\d{8})","gmi");
    var phone="13077778888";
    var rep=phone.replace(reg,"$1********");
    alert(rep);
      

  5.   

    s.replace(/^(1[358]\d)\d{8}$/,'$1********')
      

  6.   


    感谢你的回答!! 你这是验证手机号。我的意思是  把 手机号 后面的数字用 *隐藏掉。。比如手机号是这样的13577778888,显示的时候显示成 135********
    alert("13577778888".replace(/(?=\d{0,8}$)\d/g,"*") )
      

  7.   


    var r = /^0?1[3458]\d{9}$/ 
    这个检测是否是手机号码(当然,不是很科学)return $.replace(/(\d+)\d{8}/, "$1"+Array(9).join('*')) 
    将后8位隐藏掉
    建议楼主 学习下 正则
      

  8.   


    var r = /^0?1[3458]\d{9}$/ 
    这个检测是否是手机号码(当然,不是很科学)return $.replace(/(\d+)\d{8}/, "$1"+Array(9).join('*')) 
    将后8位隐藏掉
    建议楼主 学习下 正则
      

  9.   


    var r = /^0?1[3458]\d{9}$/ 
    这个检测是否是手机号码(当然,不是很科学)return $.replace(/(\d+)\d{8}/, "$1"+Array(9).join('*')) 
    将后8位隐藏掉
    建议楼主 学习下 正则这段代码return $.replace(/(\d+)\d{8}/, "$1"+Array(9).join('*'))中$ 和$1 不太明白,尤其是$1不知道哪来的
      

  10.   

     $n 是引用分组
    如(/(1)(2)/ $1=1,$2=2
    你这可以用我14楼写或不要正则 直接str.substr(0,3)+"********"
      

  11.   


    感谢你的回答!! 你这是验证手机号。我的意思是  把 手机号 后面的数字用 *隐藏掉。。比如手机号是这样的13577778888,显示的时候显示成 135********
    alert("13577778888".replace(/(?=\d{0,8}$)\d/g,"*") )
    求解释一下啥意思呗
      

  12.   

     (?=\d{0,8}$)\d 从倒数第8个开始匹配一个数字,加上 /g 全局多次匹配