问答详情
源自:2-8 分组

如何把2011-01-01和2011/01/01转换成2011.01.01

想把字符串中的时间格式,例如2011-01-01和2011/01/01,都换成2011.01.01

我试了下面的写法,但是结果有问题

这是我一开始的写法:

'2011-01-01'.replace(/^(\d{4})(-|/)(\d{2})(-|/)(\d{2})/, '$1.$2.$3') ;

结果报错

然后我就加了转义

'2011-01-01'.replace(/^(\d{4})(-|\/)(\d{2})(-|\/)(\d{2})/, '$1.$2.$3') ;

结果变成2011.-.01

为什么会这样?

提问者:jioqq237 2018-08-24 00:43

个回答

  • 努力学习啊啊啊
    2018-09-05 09:20:09
    已采纳

    '2011/01/01'.replace(/[\-\/]/g,  '.');



  • 1frgdhf
    2019-02-18 15:03:52

    '2015-12-25'.replace(/(\d{4})(-|\/)(\d{2})(-|\/)(\d{2})/g,'$1.$3.$5')

  • 海龙独仙
    2018-09-09 18:05:46

    因为你/^(\d{4})(-|\/)(\d{2})(-|\/)(\d{2})/   (-|\/) 这个也是一个分组。 [-/] 这个才是或的关系

  • jioqq237
    2018-08-24 00:49:11


    '2011-01-01'.replace(/^(\d{4})[-/](\d{2})[-/](\d{2})/, '$1.$2.$3')
    可以实现,为什么用|就不行