为什么要学习正则表达式

我们直接用一个例子来说明

//找出这个字符串中的所有数字var str = 'abc123de45fgh6789qqq111';//方法1
     function findNum(str) {        var tmp = '',
            arr = [];        for (var i = 0; i < str.length; i++) {            var cur = str[i];            if (!isNaN(cur)) {
                tmp += cur;
            } else {                if (tmp) {
                    arr.push(tmp);
                    tmp = '';
                }
            }
        }        if (tmp) {
            arr.push(tmp)
        }        return arr;
    }    console.log(findNum(str))    //["123", "45", "6789", "111"]
    //方法2 使用正则表达式
    var reg = /\d+/g;    console.log(str.match(reg))   // ["123", "45", "6789", "111"]

通过比较2种方法我们明显看出在对字符串进行处理时,使用正则表达式会简单许多,所以虽然正则表达式看起来像是火星文一样的一堆乱码的东西,但我们还是有必要去学习它的。

<

网友评论