There is a sample below. Obviously even DT::F::N won't get some of these but it gets quite a few. In the end, I gave up on trying to use a DT::F module for now and just stipulate to the users that the dates should be ISO8601 (can't use the DT::Format::ISO8601 module for all the same reasons ...) and parse it all myself.
PK <dc:date>2007</dc:date> <dc:date>1988</dc:date> <dc:date>1981</dc:date> <dc:date>2006</dc:date> <dc:date>2009</dc:date> <dc:date>1988</dc:date> <dc:date>May, 1993</dc:date> <dc:date>1978</dc:date> <dc:date>1998</dc:date> <dc:date>1999-09-01</dc:date> <dc:date>1988</dc:date> <dc:date>2000</dc:date> <dc:date>1984</dc:date> <dc:date>2004</dc:date> <dc:date>1962-08-01</dc:date> <dc:date>1999-10-01</dc:date> <dc:date>November 8, 1990</dc:date> <dc:date>1997-06-01</dc:date> <dc:date>March 29, 1994</dc:date> <dc:date>1986</dc:date> <dc:date>1988</dc:date> <dc:date>2003</dc:date> <dc:date>1984</dc:date> <dc:date>2009-07-02</dc:date> <dc:date>2007</dc:date> <dc:date>1987</dc:date> <dc:date>2005</dc:date> <dc:date>2005</dc:date> <dc:date>15/04/1980</dc:date> <dc:date>24/01/1978</dc:date> <dc:date>13/01/1981</dc:date> <dc:date>20/01/1981</dc:date> <dc:date>17/02/1981</dc:date> <dc:date>21/12/1980</dc:date> <dc:date>25/11/1980</dc:date> <dc:date>09/12/1980</dc:date> <dc:date>10/03/1981</dc:date> <dc:date>12/12/1980</dc:date> <dc:date>24/03/1981</dc:date> <dc:date>17/03/1981</dc:date> <dc:date>17/03/1981</dc:date> <dc:date>1997</dc:date> <dc:date>December 25, 2005</dc:date> <dc:date>2006</dc:date> <dc:date>2008</dc:date> <dc:date>2009-02-09</dc:date> <dc:date>2004</dc:date> <dc:date>1997</dc:date> <dc:date>2003</dc:date> <dc:date>1987</dc:date> <dc:date>1994</dc:date> <dc:date>1999</dc:date> <dc:date>1977</dc:date> <dc:date>Summer, 1992</dc:date> <dc:date>Summer, 2000</dc:date> <dc:date>1994</dc:date> <dc:date>1994</dc:date> <dc:date>1994</dc:date> <dc:date>2001</dc:date> <dc:date>1994</dc:date> <dc:date>1991</dc:date> <dc:date>1998</dc:date> <dc:date>1997</dc:date> <dc:date>1997</dc:date> <dc:date>1990</dc:date> <dc:date>2001</dc:date> <dc:date>2006</dc:date> <dc:date>1961</dc:date> <dc:date>1988</dc:date> <dc:date>1996</dc:date> <dc:date>2003</dc:date> <dc:date>2005</dc:date> <dc:date>2007-09-13</dc:date> <dc:date>1980</dc:date> <dc:date>1988</dc:date> <dc:date>1991</dc:date> <dc:date>2006</dc:date> <dc:date>1998</dc:date> <dc:date>1976</dc:date> <dc:date>1976</dc:date> <dc:date>1976</dc:date> <dc:date>1978</dc:date> <dc:date>1977</dc:date> <dc:date>1977</dc:date> <dc:date>2004</dc:date> <dc:date>1986</dc:date> <dc:date>1984</dc:date> <dc:date>1972</dc:date> <dc:date>2002</dc:date> <dc:date>1995-01-24</dc:date> <dc:date>2005</dc:date> <dc:date>1977</dc:date> <dc:date>1997</dc:date> <dc:date>2007</dc:date> <dc:date>2005</dc:date> <dc:date>2010, août-septembre</dc:date> <dc:date>2001</dc:date> <dc:date>2010-04</dc:date> <dc:date>2003</dc:date> <dc:date>1995</dc:date> <dc:date>1993</dc:date> <dc:date>Winter, 1997</dc:date> <dc:date>November 28, 1988</dc:date> <dc:date>1989</dc:date> <dc:date>12/04/1983</dc:date> <dc:date>19/04/1983</dc:date> <dc:date>19/04/1983</dc:date> <dc:date>1995</dc:date> <dc:date>1983</dc:date> <dc:date>2010-06-11</dc:date> <dc:date>1998-01-08</dc:date> <dc:date>1981</dc:date> <dc:date>1984</dc:date> <dc:date>2007</dc:date> <dc:date>2004</dc:date> <dc:date>1992</dc:date> <dc:date>1998</dc:date> <dc:date>1962</dc:date> <dc:date>2004</dc:date> <dc:date>2003</dc:date> <dc:date>Summer, 1992</dc:date> <dc:date>1988</dc:date> <dc:date>1995</dc:date> <dc:date>1995</dc:date> <dc:date>Winter, 1992</dc:date> <dc:date>2001</dc:date> <dc:date>1988</dc:date> <dc:date>November 12, 1980</dc:date> <dc:date>1973</dc:date> <dc:date>2006</dc:date> <dc:date>1990</dc:date> <dc:date>2007-07-17</dc:date> <dc:date>Oct., 1986</dc:date> <dc:date>2007</dc:date> <dc:date>1977</dc:date> <dc:date>2003</dc:date> <dc:date>2003</dc:date> <dc:date>1998</dc:date> <dc:date>1968</dc:date> <dc:date>1978</dc:date> <dc:date>1988</dc:date> <dc:date>December 2003</dc:date> <dc:date>1998</dc:date> <dc:date>1975</dc:date> <dc:date>1998</dc:date> <dc:date>1988</dc:date> <dc:date>2001</dc:date> <dc:date>2002</dc:date> <dc:date>1972</dc:date> <dc:date>1996</dc:date> <dc:date>1976</dc:date> <dc:date>1998</dc:date> <dc:date>1989</dc:date> <dc:date>2007-10-16</dc:date> <dc:date>2007</dc:date> <dc:date>1991-10-01</dc:date> <dc:date>2006</dc:date> <dc:date>1996-03-04/1996-04-07</dc:date> <dc:date>1995</dc:date> <dc:date>2004</dc:date> <dc:date>1993</dc:date> <dc:date>1984</dc:date> <dc:date>2007</dc:date> <dc:date>2008-04-23</dc:date> <dc:date>2005</dc:date> <dc:date>1979</dc:date> <dc:date>April 14, 1990</dc:date> <dc:date>1988</dc:date> <dc:date>December 2000</dc:date> <dc:date>1991</dc:date> <dc:date>1996</dc:date> <dc:date>1990</dc:date> <dc:date>1989</dc:date> <dc:date>Winter, 2004</dc:date> <dc:date>1989</dc:date> <dc:date>2003</dc:date> <dc:date>2006</dc:date> <dc:date>2006</dc:date> <dc:date>2004</dc:date> <dc:date>1984</dc:date> <dc:date>2004</dc:date> <dc:date>2009-08-04</dc:date> <dc:date>2002</dc:date> <dc:date>1982</dc:date> <dc:date>2003</dc:date> <dc:date>1977</dc:date> <dc:date>2006</dc:date> <dc:date>1983</dc:date> <dc:date>1984</dc:date> <dc:date>1990-09-15</dc:date> <dc:date>1988</dc:date> <dc:date>1 October 1996</dc:date> <dc:date>2004</dc:date> <dc:date>2009</dc:date> <dc:date>2000</dc:date> <dc:date>2007</dc:date> <dc:date>1992</dc:date> <dc:date>1996</dc:date> <dc:date>1984</dc:date> <dc:date>1994</dc:date> <dc:date>2004</dc:date> <dc:date>January 01, 2008</dc:date> <dc:date>2008</dc:date> On 25 Feb 2011, at 8:56 PM, Jon Bjornstad wrote: > Philip, > > How about if you share a sample > of the diversity of dates that you are dealing with? > I'm curious to know why you think you need > DT:F:Natural - which parses crazy (but cool!) things > like "3rd wed last nov". > > Jon > > On Feb 23, 2011, at 10:59 PM, Philip Kime wrote: > >> Yes, that would be fine and I could use DateTime::Incomplete to get >> what I want but unfortunately what I need is the parsing so I don't >> have to parse it all myself (which is what I'm currently doing). The >> strings aren't that simple I'm afraid, that was just a minimal >> example. In fact, the strings are so irregular in one app data source >> driver that I really need to use DataTime::Format::Natural ... >> >> PK > -- Dr Philip Kime