search

Home  >  Q&A  >  body text

javascript正则 - javascript 正则替换通讯录特殊字符

javascript 正则替换通讯录特殊字符,示例数据如下:

+86 18612345678
8613898765421
135-1234-5678
+8615145698763
+86 151-4569-8763

使用 javascript 统一将上述不同格式数据整理为标准11位数字手机号,如下:
18612345678

不是伸手党,实在没思路,请指示!

巴扎黑巴扎黑2840 days ago353

reply all(2)I'll reply

  • PHP中文网

    PHP中文网2017-04-10 15:20:12

    简单的字符替换 + 字符截取

    str.replace(/[+-\s]/g, '').slice(-11);

    reply
    0
  • PHPz

    PHPz2017-04-10 15:20:12

    var reg = /[+-\s]/g,
        mobileReg = /^(13|15|18)\d{9}$/,
        res = [], tempStr;
    
    var phones = [ ' +86 12345678910 ', ' 8613898765421', '135-1234-5678', '+8615145698763', '+86 151-4569-8763']
    
    for (var i = 0; i < phones.length;i++) {
        tempStr = phones[i].trim().replace(reg, '').slice(-11);
        if (mobileReg.test(tempStr)) {
            res.push(tempStr)
        }
    }
    
    console.log(res);  // ["13898765421", "13512345678", "15145698763", "15145698763"]
    

    reply
    0
  • Cancelreply