论坛首页 Web前端技术论坛

JS正则子匹配例子

浏览 2860 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2012-11-06  
  Javascript中,拆分字符串时可以使用string的的split或者substring。但是使用正则会更灵活和准确,这里是一个子匹配的例子,在页面过滤数据时很有用。

        var reg = /^\[(\d+)-(\d+)\]$/;
        var str = "[234-45]";

        // now, I want the tow data
        if (reg.exec(str)) {
          document.write(RegExp.$1 + " " + RegExp.$2)
        }

JS的正则对象有两种创建方式:
使用RegExp的显式构造函数,语法为:new RegExp("pattern"[,"flags"])。
使用RegExp的隐式构造函数,采用纯文本格式:/pattern/[flags]。

有三个方法:
exec(), test(), compile()

另外,String也有可以使用正则的方法,只是功能少些:
方法 描述
search
检索与正则表达式相匹配的值。
match
找到一个或多个正则表达式的匹配。
replace
替换与正则表达式匹配的子串。
split
把字符串分割为字符串数组。

下面是详解的文章:
JS中的RegExp对象(一) JS中的RegExp对象(二)
   发表时间:2012-11-06  
split用正则匹配在IE下和firefox下对""的匹配效果不同,字符没有问题,被坑过
如:
"fdkfjkdjf,fdf,,".split(/,/);
0 请登录后投票
论坛首页 Web前端技术版

跳转论坛:
Global site tag (gtag.js) - Google Analytics