我需要在现有应用中处理自定义日期格式。这个想法是用户必须从他们几乎无法控制的外部来源处理多种格式。我们需要能够采用格式并对它进行验证日期,以及以该格式特别解析字符串。另一件事是这些可以完全随意,比如JA == January,FE == February等......
根据我的理解,慢性只处理解析(并以更神奇的方式进行解析,然后我可以使用),并在此处输入代码DateTime#strptime接近,但并不真正处理整个两个字符月的情况,甚至使用自定义格式化程序'核'选项是为这样的边缘情况编写自定义支持,但如果存在类似的东西,我宁愿使用库。
答案 0 :(得分:1)
如果格式真的非常任意,我认为不存在处理所有这些问题的东西。将输入“塑造”成可由Date.parse
,Date.strptime
或其他现有工具处理的形式可能是最简单的,即使这可能意味着相当多的工作。
我们谈论了多少种不同的格式?他们中的任何一个冲突吗?您似乎只能gsub
这样:input_string.gsub(/\bJA\b/i, 'January')
。这是导入例程的一部分,还是用户打算以不同格式键入日期?
这里有一个相关问题:Parse Italian Date with Ruby