删除日期字符串中的空格

Remove space in a date string

本文关键字:空格 字符串 日期 删除      更新时间:2023-09-26

我从一个数据库中得到一个日期,该日期有时在时间中有空格(没有办法清理数据库,因为我无法控制(。我需要删除空格,以便将其格式化为 Javascrpt 日期。

例如:

5 : 03 PM 

如您所见,这是不正确的。我已经查看了 Moment.js 和正则表达式来删除冒号周围的空格,但不确定这是如何完成的,或者这是否是正确的方法。有没有办法删除这个空间?

谢谢大家!

仅要删除冒号周围的空格,请尝试以下操作;(其中$1是指第一个捕获组,这是唯一的捕获组(:)(

a.replace(/'s*(:)'s*/, "$1");

或者如果您希望进一步简化它,没有任何捕获组;

a.replace(/'s*:'s*/, ":");

如果需要,您实际上可以使用 Moment .js 解析该日期字符串,您只需要在格式字符串中包含空格:

var time = moment('5 : 03 PM', 'h : m A');

然后,您可以根据需要对其进行格式化:

time.format('h:mmA'); // "5:30PM"
time.format('hh:mm A'); // "05:03 PM"
time.format('HH:mm'); // "17:03" 

为了完整起见,你可以使用 viod 正则表达式:

'5  :  03pm'.split(':')
  .map(function(part) { return part.trim(); })
  .join(':');