2020 年日期格式错误我有一组数据,其中有几种不同的日期格式,并且我正在创建一个新列以将日期转换为一种格式。日期采用 d/m/yh:m:s 格式。当我运行脚本时,所有 2019 年日期都可以正常转换,但 2020 年日期的月份日期会颠倒。如果我进入列信息并手动更改设置,它就可以正常工作。我可以在 JSL 中做什么来保留正确的格式?
约会时间
2020年5月1日 1:10
2020年5月1日 1:10
2020年5月1日 1:10
2019年12月30日 14:01:18
2019年12月30日 14:01:18
2019年12月30日 14:01:18
新列("DateTime2",数字,"连续",格式("d/m/yh:m:s",22,0),输入格式("d/m/yh:m:s",0)) ;
对于每一行(:DateTime2 = num(:DateTime));
日期时间 日期时间2
2020年5月1日 1:10 01/05/ 2020 上午 1:10:00
2020年5月1日 1:10 01/05/ 2020 上午 1:10:00
2020年5月1日 1:10 01/05/ 2020 上午 1:10:00
2019年12月30日 14:01:18 30/12/ 2019 下午 2:01:18
2019年12月30日 14:01:18 30/12/ 2019 下午 2:01:18
2019年12月30日 14:01:18 30/12/ 2019 下午 2:01:18
回复:2020 年的日期格式错误您输入的日期是字符数据,并且您正在使用 num() 函数来猜测日期的格式。使用 informat 函数并指定格式。您的一些数据有秒数,而有些没有。您可以使用正则表达式将所有内容保持在秒数可能所在的位置。 \d+ 匹配一个或多个数字,而 \D 匹配非数字。
Informat( Regex( :datetime, "\d+\D\d+\D\d+\D\d+\D\d+" ), "d/m/y h:m" )
JMP 猜测 m/d/y 是模糊日期;而 2019 年的示例日期并不模糊。
the datetime column is character data, column2 is a formula columndatetime 列是字符数据,column2 是公式列
Column 2 formula第 2 列公式