如何 trim javascript 日期对象。我有一个日期,格式为(yyyy-d-m)。
日期值为 2015-03-03
,我想 trim 天数中的前 0,而不是月数。
示例:当我输入:
2015-03-03
它将返回 2015-3-03
我尝试了以下代码,但它也在几个月内 trim 了 0
。
$scope.date = {
"start": "2015-01-26",
"end": "2015-04-03"
};
`var from = $scope.date.from.replace(/\b0(?=\d)/g, '');
var to = $scope.date.to.replace(/\b0(?=\d)/g, '');
console.log(to);
//output 2015-1-26 and 2015-4-3`
我该怎么办?
最佳答案
如果您只想删除当天的前导零,则:
$scope.date.from.replace(/-0(\d)$/,'-$1')
就可以了。不需要先行查找或 g 标志(因为您只替换一个实例)。
编辑
抱歉,我应该解释一下正则表达式和替换是如何工作的。
在正则表达式中,-0(\d)$
匹配破折号,后跟零,后跟数字,最后是字符串结尾。方括号 ( )
捕获保留空间中的匹配数字,该数字在替换字符串中由 $1
表示。
然后,整个匹配项将替换为替换字符串 '-$1'
(破折号),后跟匹配的数字:$1
。
关于javascript - 如何在 Angular/javascript中使用格式(yyyy-dd-mm)在日中 trim 0但不在月份中 trim 0?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29090152/