2010-05-31 60 views
1

我有一個要求來處理現有應用程序中的自定義日期格式。這個想法是,用戶必須處理來自外部來源的多種格式,而他們幾乎無法控制。我們將需要能夠採用格式,並對日期進行驗證,並以該格式專門解析字符串。另一件事是,這些可以是完全任意的,像JA == 1月,FE == 2月等...解析和驗證ruby中的任意日期格式(在rails上)

我的理解,慢性只處理解析(並以更神奇的方式做,然後我可以使用),並在此處輸入代碼DateTime#strptime接近,但並不真正處理整個兩個字符月的情況,即使使用自定義格式化程序。 '核'選項是爲像這樣的邊緣情況提供定製支持,但如果存在這樣的情況,我寧願使用庫。

回答

1

我不認爲處理所有這些問題的東西存在,如果格式真的非常任意。將您的輸入「塑造」成可由Date.parseDate.strptime或其他現有工具處理的形式可能是最容易的,即使這可能意味着相當多的工作。

我們在談論多少種不同的格式?他們中的任何人有衝突嗎?看起來你可以像這樣gsubinput_string.gsub(/\bJA\b/i, 'January')。這是導入例程的一部分,還是用戶打算以不同格式輸入日期?

有一個相關的問題在這裏:Parse Italian Date with Ruby

+0

其實這就是我們最終會:)路 – 2010-06-03 01:23:27