网上lua的源码很少,知识也很少,最近做一个功能校验日期格式时,
需要知道日期是否连续,即是指定日期前后几天的日期。
在根据标准日期转换为想要格式的日期的年月日,自己拼返回值。
--自定义一个函数,time为指定的日期格式YYYY-MM-DD,
--dayChange为指定日期前后天数,用法:前一天 -1 后一天 1.
function dateChange(time,dayChange)
if string.len(time)==10 and string.match(time,"%d%d%d%d%-%d%d%-%d%d") then
local year=string.sub(time,0,4);--年份
local month=string.sub(time,6,7);--月
local day=string.sub(time,9,10);--日
local time=os.time({year=year, month=month, day=day})+dayChange*86400 --一天86400秒
return true,(os.date('%Y',time).."-"..os.date('%m',time).."-"..os.date('%d',time))
else
return false,"请输入YYYY-MM-DD格式的日期"
end
end
–测试代码
print(dateChange(“2012-12-21”,1))
2012-12-22