JS提取手机号及无效内容

手里一批号码,需要提取出手机号。由于格式很乱,写个小工具处理

测试样例:

"13988888888	+86-0714-3888888"
"13588888888	86-020-3888888"
-86-13788888888
"13788888888 	 86 0317 888888"
"13588888888	+86-0371-5888888-"
"13488888888	010-010-6888888-888"
"13888888888	457-0373-3888888"
"18988888888	+86-0311-8888888-"
86-0760-8888888
-0760-8888888
abc

执行结果:
在这里插入图片描述

html代码:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>手机号码提取</title>
</head>
<body>
待处理号码:<textarea id="original" cols="100" rows="20"></textarea><br/>
<input id="handleBtn" type="button" value="处理" onclick="handle()"><br/>
处理结果:<textarea id="complete" cols="100" rows="20"></textarea>
无效结果:<textarea id="notComplete" cols="100" rows="20"></textarea>
<script>
    var mobileReg = /(1[0-9]{10})/g;

    function handle() {
        document.getElementById("handleBtn").setAttribute("disabled", true);
        document.getElementById("handleBtn").value = "处理中...";
        var data = document.getElementById("original").value;
        document.getElementById("complete").value = "";
        var dataArr = data.split("\n");
        var completeVal = "", notCompleteVal = "", tmp = "";
        var regResult;
        var count = 0;
        for (var i = 0; i < dataArr.length; i++) {
            tmp = dataArr[i];
            regResult = dataArr[i].match(mobileReg);
            if (regResult != null) {
                for (var j = 0; j < regResult.length; j++) {
                    count++;
                    completeVal += regResult[j] + "\n";
                    tmp = tmp.replace(regResult[j], "");
                }
            }
            notCompleteVal += tmp + "\n";
        }
        document.getElementById("complete").value = "手机号数量:" + count + "\n" + completeVal;
        document.getElementById("notComplete").value = notCompleteVal;
        document.getElementById("handleBtn").removeAttribute("disabled");
        document.getElementById("handleBtn").value = "处理";
    }
</script>
</body>
</html>
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值