gpt4 book ai didi

java - 使用日期样本作为输入进行日期格式预测

转载 作者:搜寻专家 更新时间:2023-11-01 02:35:40 25 4
gpt4 key购买 nike

寻找一种将日期列表(字符串类型)作为输入并返回可能的日期格式的方法。

for example: input is ["01/02/2018","13/09/2018","8/11/2016"] then output should be "dd/MM/yyyy".

这是其中一个例子。它应该能够返回最适合给定输入的 java 支持的所有日期格式。

最佳答案

我不认为这种方法是现成的。您需要自己编写代码。

这是可能的,尽管不一定总能给出唯一的答案。

要求字符串中恰好包含三个数字,并且每个字符串中的数字之前、之间和之后的分隔符相同。从每个字符串中取出第一个、第二个和第三个数字。找出每个的最小值和最大值。我以你为例:

["01/02/2018","13/9/2018","8/11/2016"]

  • 第一个数字最小为 1,最大为 13
  • 第二个数字最少 2 到最多 11
  • 第三个数字的最小值是 2016 年,最大值是 2018 年

年份很简单,即最小值和最大值在 1900 到 2100 之间的数字。选择适合您情况的限制。月份是不超过 12 的数字。在您的示例中,第二个数字是自第一个数字最大为 13 以来的月份。如果没有一个非年份数字超过 12,则您无法决定并且需要抛出异常之类的。一旦你决定了年份和月份,你还没有使用的数字就是这个月的第几天。检查它是否在 1 到 31 之间以进行验证。

对于日和月:如果出现前导零(0102 在您的示例中) 所有出现有两位数,格式要求两位数,使用ddMM。否则使用 dM(这将为数字打印足够的数字并将解析一位和两位输入)。因为在您的示例中,月份被指定为 9(一位数字,在第二个字符串中)并且 8 被指定为日,因此请使用 d M.

最终结果:d/M/uuuud/M/yyyy

关于java - 使用日期样本作为输入进行日期格式预测,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54107928/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com