Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/date/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在scala中识别日期格式_Scala_Date_Date Format - Fatal编程技术网

如何在scala中识别日期格式

如何在scala中识别日期格式,scala,date,date-format,Scala,Date,Date Format,如何通过传递输入日期来标识日期格式 2018年4月17日 2018年4月17日 2018/17/4 2018/04/17如评论中所述,您需要依次检查每个不同的日期格式,直到获得有效日期 检查不同格式的顺序取决于日期的来源。请参阅不同国家的偏好,但请注意,美国确实是唯一使用MDY和YDM的国家。其他地方使用YMD或DMY 因此,对于美国来说,你可能想要MDY-DMY-YMD-YDM,对于中国来说,你想要YMD-DMY,而对于世界其他地区来说,你可能想要DMY-YMD 理想情况下,检查日期的顺序应该

如何通过传递输入日期来标识日期格式

2018年4月17日

2018年4月17日

2018/17/4


2018/04/17

如评论中所述,您需要依次检查每个不同的日期格式,直到获得有效日期

检查不同格式的顺序取决于日期的来源。请参阅不同国家的偏好,但请注意,美国确实是唯一使用MDY和YDM的国家。其他地方使用YMD或DMY

因此,对于美国来说,你可能想要MDY-DMY-YMD-YDM,对于中国来说,你想要YMD-DMY,而对于世界其他地区来说,你可能想要DMY-YMD


理想情况下,检查日期的顺序应该是系统中的一个区域选项。

您可以根据各种正则表达式模式匹配输入,但无法区分美国2月1日(2018年2月1日)和欧洲1月2日(2018年2月1日)。年份缩写(11/12/13)也是一个问题。也有Java库可用于此。最简单的方法是建立一个列表,列出所有可能的格式(不应该太多),并尝试一个接一个地设置格式,直到其中一个匹配正确。2018/17/4没有真正使用。你确定你能吃这个吗?另一个问题很常见。类似的问题已经被问过很多次了。搜索更多。无论如何,除非您意识到这是不可能的,否则我建议您研究一下(因为您可以在Scala中使用Java类)。