正则中$1、$2的应用--日期格式化

来源:互联网 发布:drupal建站 编辑:程序博客网 时间:2024/06/06 01:15

在正则表达式中可以通过一对小括号“ ()”将一个完整的正则表达式分割出几个子表达式,并可以用 “$ + index”来分别引用对应子匹配项的内容。

下面以格式化日期为例:
目标是将“Tue Aug 08 2017 18:23:48 GMT+0800 (中国标准时间)”转化为“2017-08-08”

            var time= new Date().toLocaleDateString()             var reg=/(\d{4})\/(\d{1,2})\/(\d{1,2})/            var now=time.replace(reg,function($1,$2,$3,$4){                if($3<10){$3="0"+$3}                if($4<10){$4="0"+$4}                return $2+"-"+$3+"-"+$4             })            console.log(now)   //2017-08-08

另一种实现方式:

var now=(new Date()).toLocaleDateString().replace(/\/(\d)\//, "-0$1-").replace(/-(\d)$/, "-0$1")console.log(now)   //2017-08-08
原创粉丝点击