如何将ASP.Net JSON日期格式转换为Lua?

我不了解任何 ASP.NET,但我需要一个能够将日期转换的 Lua 函数。

示例日期:"\/Date(1397304050320)\/"-->4/12/2014

下面的函数是否可翻译成 Lua?

如果您不知道 Lua,您能否尝试为我翻译匹配模式?

我已经找到了这个函数:

function FixJsonDates(data) {
    //microsoft script service perform the following to fix the dates.
    //json date:\/Date(1317307437667-0400)\/"
    //javasccript format required: new Date(1317307437667-0400)

    //copied from micrsoft generated fiel.
   var _dateRegEx = new RegExp('(^|[^\\\\])\\"\\\\/Date\\((-?[0-9]+)(?:[a-zA-Z]|(?:\\+|-)[0-9]{4})?\\)\\\\/\\"', 'g');
   var exp = data.replace(_dateRegEx, "$1new Date($2)");
   return eval(exp);
}

点赞
用户107090
用户107090

为了从字符串中提取日期并且转化成日期格式,请尝试以下代码:

local s = "some text/Date(1397304050320)/more text"
local t = s:match("/Date%((%d+)%)/")
print(os.date("%D",t/1000))

在 Lua 中,os.date 函数需要秒为单位的时间。显然,您所拥有的数字是毫秒为单位的。

2015-01-09 01:43:09