[转] javascript 正则表达式提取数字使用

简述:

测试了一下js的正则表达式函数match

用来从一个字符串里挑出非0开头的数字, 放入一个array里, 之后join(',')之后输出

知识点:

1. 用match函数, 提取一个字符串当中所有的数字

reg中的g返回所有的匹配,如果不加g则返回第一个匹配的项

2. 若果没有匹配,则返回一个null的list

 

代码:

<!DOCTYPE html>
<html>
<head>
    <script type="text/javascript">
        function getNumList() {
            var nums = document.getElementById("numbers").value;
            var reg = /[1-9][0-9]*/g;
            var numList = nums.match(reg);
            if (numList == null) {
                document.getElementById("result").innerHTML = "No legal number input";
            } else {
                document.getElementById("result").innerHTML = numList.join(",");
            }
        }
    </script>
</head>
<body>
    <p>Get numbers</p>
    <input type="text" id="numbers" value="123" />
    <input type="button" value="exec" onclick="getNumList()" />
    <p>result: <span id="result"></span></p>
</body>
</html>

输出:

原文地址:https://www.cnblogs.com/linxd/p/4412280.html