Intelligent date / time parser for Java
JodaTime is excellent for manipulating date objects (e.g. date.plusDays(10))
...but JChronic is what you want for natural language date parsing, e.g.
Chronic.parse("now")
Chronic.parse("tomorrow 15:00")
Chronic.parse("14/2/2001")
Chronic.parse("yesterday")
Chronic.parse("20 Jan 2010")
Your question is similar to this one.
No, there is not. What it should return on "01/02/03"? 1 Jan 2003, 3 Feb 2001, or 2 Mar 2001?