更改/缩短时间格式

时间:2014-02-25 18:23:25

标签: javascript regex

我真的很喜欢编程,并希望减少时间格式...

“Sun Oct 13 00:00:00 2013”​​太“2013年10月13日”。

这是最好的方法吗?是通过正则表达式还是某种子函数?

正则表达式会是什么样的(^ [Sun] [Mon] [Tue] [Wed] [Thu] [Fri] [Sat] [00:00:00])?

如果数字改变了,那就不会很有活力了......这太令人困惑了

4 个答案:

答案 0 :(得分:3)

JavaScript有一个Date对象。

例如,你可以这样做:

var myDate = new Date("Sun Oct 13 00:00:00 2013");
var y = myDate.getFullYear();
var m = myDate.getMonth();
var months = ["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];
var d = myDate.getDate();
var myFormattedDate = months[m] + ' ' + d + ' ' + y;

要获得更好的格式化和本地化,请查看moment.js

答案 1 :(得分:1)

如果输入字符串的格式与示例中的格式相同,请尝试此选项:

input = input.replace(/.*?([a-zA-Z]{3}\s+\d+).*?(\d\d\d\d)/g, "$1 $2");

答案 2 :(得分:1)

快速简单的正则表达式将是:

\d{2}:\d{2}:\d{2}\s

并替换为""(无)

工作正则表达式示例:

http://regex101.com/r/vL0zJ4

使用Javascript:

timeStr = "Sun Oct 13 00:00:00 2013";
timeStr = timeStr.replace(/\d{2}:\d{2}:\d{2}\s/, "");

console.log(timeStr);

输出:

Sun Oct 13 2013

答案 3 :(得分:1)

var date = new Date("Sun Oct 13 00:00:00 2013");
date = (date + "").split(" ").slice(1, 4).join(" ");
alert(date);

试试这个。这会根据您的需要提醒Oct 13 2013