码迷,mamicode.com
首页 > Web开发 > 详细

js中使用正则表达式

时间:2015-04-10 13:36:19      阅读:153      评论:0      收藏:0      [点我收藏+]

标签:js中使用正则表达式

正则表达式不但可以在后台使用,还可以在前台调用。使用正则表达式在前台进行数据的校验、提取、替换非常方便。在C#中使用正则表达式和js中的使用有点不同,下面先为大家讲解一下两者的不同,接着再为大家详细讲解一下正则表达式在js中的使用。

1.在js中正则表达式写在一对//中,是一个特定的类型,而C#中的正则表达式是一个字符串;
2. js中的三个函数是text()、exec()、replace(),C#中的三个函数是IsMatch()、Match()、Repalce();

上面两点是两者的主要不同之处,其他地方的使用几乎一样。

1、匹配

使用的主要函数是test()。js代码如下所示。

        onload = function () {
            document.getElementById("btn").onclick = function () {
                var txt = document.getElementById("txtEmail").value;
                var reg = /^\w+@\w+(\.\w+)+$/;
                alert(reg.test(txt));
            };
        };
2、提取

        var reg = /\d+/g;
        // var str = "我要把数字12345提取出来";
        // var dNum = reg.exec(str);
        // alert(dNum);
        // 提取组使用括号括起(string.match方法)
        // 多个匹配,如果有多个数字
        //  1、在正则表达式后加一个g,表示全局
        //  2、循环匹配,就循环提取,没执行一次就提取一次
        // var strs = "2015年4月21日";
        // alert(reg.exec(strs));
        // alert(reg.exec(strs));
        // alert(reg.exec(strs));
        // alert(reg.exec(strs));

3、替换

        var str = "2015年4月10日";
        // 在C#中引用前面匹配的内容使用$num
        // str = str.replace(/(\d+)年(\d+)月(\d+)日/, "$1-$2-$3");
        // alert(str);

在上面正则表达式的编写过程中,有一点要特别注意:加上^ 、$开始结束标记表示完全匹配,如果不加则表示部分匹配。



js中使用正则表达式

标签:js中使用正则表达式

原文地址:http://blog.csdn.net/ydm19891101/article/details/44978143

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!