使用日期样本作为输入进行日期格式预测
Date format prediction by using sample of dates as input
正在寻找一种将日期列表(字符串类型)作为输入和 return 可能的日期格式的方法。
for example: input is ["01/02/2018","13/09/2018","8/11/2016"] then
output should be "dd/MM/yyyy".
这是其中一个例子。它应该能够 return 所有支持的日期格式 java 最适合给定的输入。
我认为这种方法不是现成的。您需要自己编写代码。
这是可能的,尽管不一定总能给出唯一的答案。
要求字符串中正好包含三个数字,并且每个字符串中的数字之前、之间和之后的分隔符相同。从每个字符串中取出第一个、第二个和第三个数字。找出每个的最小值和最大值。我以你为例:
["01/02/2018","13/9/2018","8/11/2016"]
- 第一个数字最小为 1,最大为 13
- 第二个数字最少 2 个,最多 11 个
- 第三个数字的最小值是 2016 年,最大值是 2018 年
年份很简单,就是最小值和最大值在 1900 到 2100 之间的数字。选择适合您情况的限制。月份是不超过 12 的数字。在您的示例中,第二个数字是第一个数字最大为 13 后的月份。如果 none 的非年份数字超过 12,则您无法决定并且需要抛出异常等。一旦你决定了年份和月份,你还没有使用的数字就是这个月的第几天。检查它是否在 1 到 31 之间以进行验证。
对于日和月:如果出现前导零(01
和 02
在您的示例中) 和 所有事件都有两位数,格式要求两位数,使用dd
或MM
。否则使用 d
或 M
(这将为数字打印足够的数字并将解析一位和两位输入)。因为在您的示例中,月份以 9
(一位数字,在第二个字符串中)和 8
作为日期,所以使用 d
和 M
。
最终结果:d/M/uuuu
或 d/M/yyyy
。
正在寻找一种将日期列表(字符串类型)作为输入和 return 可能的日期格式的方法。
for example: input is ["01/02/2018","13/09/2018","8/11/2016"] then output should be "dd/MM/yyyy".
这是其中一个例子。它应该能够 return 所有支持的日期格式 java 最适合给定的输入。
我认为这种方法不是现成的。您需要自己编写代码。
这是可能的,尽管不一定总能给出唯一的答案。
要求字符串中正好包含三个数字,并且每个字符串中的数字之前、之间和之后的分隔符相同。从每个字符串中取出第一个、第二个和第三个数字。找出每个的最小值和最大值。我以你为例:
["01/02/2018","13/9/2018","8/11/2016"]
- 第一个数字最小为 1,最大为 13
- 第二个数字最少 2 个,最多 11 个
- 第三个数字的最小值是 2016 年,最大值是 2018 年
年份很简单,就是最小值和最大值在 1900 到 2100 之间的数字。选择适合您情况的限制。月份是不超过 12 的数字。在您的示例中,第二个数字是第一个数字最大为 13 后的月份。如果 none 的非年份数字超过 12,则您无法决定并且需要抛出异常等。一旦你决定了年份和月份,你还没有使用的数字就是这个月的第几天。检查它是否在 1 到 31 之间以进行验证。
对于日和月:如果出现前导零(01
和 02
在您的示例中) 和 所有事件都有两位数,格式要求两位数,使用dd
或MM
。否则使用 d
或 M
(这将为数字打印足够的数字并将解析一位和两位输入)。因为在您的示例中,月份以 9
(一位数字,在第二个字符串中)和 8
作为日期,所以使用 d
和 M
。
最终结果:d/M/uuuu
或 d/M/yyyy
。