js正则表达式

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了js正则表达式相关的知识,希望对你有一定的参考价值。

一、 基本语法

   1 直接量语法

       /pattern/attributes

    2 创建RegExp对象语法

    new RegExp( pattern, attributes);

  参数介绍:

 pattern:参数 pattern 是一个字符串,指定了正则表达式的模式或其他正则表达式。

    参数 attributes 是一个可选的字符串,包含属性 "g"、"i" 和 "m",分别用于指定全局匹配、区分大小写的匹配和多行匹配。ECMAScript 标准化之前,不支持 m 属性。如果 pattern 是     正则表达式,而不是字符串,则必须省略该参数。

二、经典实例

  1  正则实现去除时间后面的时分秒(2017/7/9 00:00:00)

   var str = "2017/7/9 00:00:00";

  str.replace(/(\S+)\s(\S+)/,"$1");

       result:   2017/7/9

       注:\S代表查找一个非空白字符     \s代表查找一个空白字符      +代表匹配前面的子表达式一次或多次(大于等于1次) 

              $1代表第一个括号里面的匹配到的内容

  

     2  正则实现数字千分位

         var num = 1245354;

         var str = num.toFixed(2).replace(/(\d)(?=(\d{3})+\.)/g,"$1,");

    result:   "1,245,354.00"

      注: toFixed() 方法可把 Number 四舍五入为指定小数位数的数字。

                 (\d)代表匹配一个数字

      (\d{3}) 代表匹配三个长度的数字

                 (\d)(? = (\d{3})) 代表匹配的\d这个数字后面需要有三个数字

                 +代表匹配的前一个表达式成立一个或多次(即匹配的数字后面长度可以是3也可以是6或其它倍数) 

                 \.转译表示.号是普通的.号,这个要求匹配的数字不仅要满足上面的要求,还要满足后面是3位或6位或其他倍数接下来的需要是.号

                 g代表全局查找

以上是关于js正则表达式的主要内容,如果未能解决你的问题,请参考以下文章

js中用正则表达式取值

JS正则表达式基础认知

js正则表达式替换捕获内容

如何用js匹配url的正则表达式

简单的js正则表达式问题

js验证密码的正则表达式