从String中提取各种格式的日期?

时间:2015-04-13 10:28:49

标签: java regex string date date-format

我想知道是否有一种简单的方法可以从Java中的String中提取第一个遇到的日期。

我的程序将分析许多不同语言的 String 文本。这些字符串可以包含日期。由于语言(以及不同的来源),我需要考虑很多格式。

I first thought about Regex,为我能找到的每种格式制作一个正则表达式...但是有很多,例如“月(d)d,yyyy”或“mm / dd / yyyy”或“dd” -mon-YYYY” ...

所以我想知道是否有更简单的方法可以使用DateFormat从字符串中提取日期,因此我可以将找到的日期转换为“dd / mm / yyyy”。

感谢您的帮助。 ^^

1 个答案:

答案 0 :(得分:2)

我认为最好的解决方案是使用正则表达式,但显然你必须知道所有可能的模式。

一种(可能的)方法是通过机器学习:您可以提供一组代表性示例,让算法为您找到模式。

您的问题与this article中提到的问题非常类似。 您可以尝试使用this webapp为您找到一个好的正则表达式。

主要问题是你必须提供重要的例子。 我希望这会对你有帮助!