Aşağıdaki biçimlerden herhangi birinde (aynı programda tümünü işlemesi gerekir) yazılmış bir tarih verildiğinde, geçerli biçimlerde ayrıştırın yyyy/mm/dd date.
17th May 2012
March 14th, 2016
20 February 2014
September 14, 2017
Sunday, June 8, 2015
kurallar
- Tarihler bazen geçersiz olur, yani. ay için yanlış gün veya bir yıldaki ay sayısı, her iki durumu da ele almalısınız. Ya hata vererek ya da tutarlı bir falsey değeri döndürerek seçim yaparsınız. (Ancak yukarıdaki şablon biçimlerine bağlı kalacaklar)
- İki basamaklı bir çıktı oluşturmak için 10'dan az gün ve aylar için dolgu kullanılmalıdır.
- Ay adları her zaman tam adı olacak, üç karakterli karşılıklarına kısaltılmayacak.
- Yılın her zaman 0000-9999 aralığında olacağını varsayabilirsiniz.
- Negatif sayıların ele alınması gerekmez.
- Çıktının herhangi bir biçimde olması, konsola yazdırılması veya bir işlevden döndürülmesi için tam bir program veya işlev oluşturabilirsiniz.
- Girdi her zaman bir dize olur, çıktı bir dizide tek bir bağımsız değişken olarak almayı kısaltırsa, her zaman bir dize olmalıdır.
["17th May 2012"]bunu yapabilirsiniz ve çıktı aynı olabilir["2012/05/17"] - Girişte yazımın doğru olacağını varsayabilirsiniz.
BONUS: çünkü burada bir meydan okumayı sevmeyenler;)
Ayrıca, giriş biçimlerine izin vermeyi başarabiliyorsanız The Fourteenth of March, 2016veya 1'den az olan herhangi bir son bayt sayımı ile kodunuzdan March the Fourteenth, 2016fazladan 20 bayt kaldırabilirsiniz .
Yazım konusunda herhangi bir karışıklığı önlemek için her gün için tam yazılı sayılar.
First, Second, Third, Fourth, Fifth, Sixth, Seventh, Eighth, Nineth, Tenth, Eleventh, Twelfth, Thirteenth, Fourteenth, Fifteenth, Sixteenth, Seventeenth, Eighteenth, Nineteenth, Twentieth, Twenty First, Twenty Second, Twenty Third, Twenty Fourth, Twenty Fifth, Twenty Sixth, Twenty Seventh, Twenty Eighth, Twenty Nineth, Thirtieth, Thirty First
Test Durumları
INPUT | Output
17th May 2012 | 2012/05/17
March 14th, 2016 | 2016/03/14
20 February 2014 | 2014/02/20
September 14, 2017 | 2017/09/14
Sunday, June 8, 2015 | 2015/06/08
1st January 1918 | 1918/01/01
The Fourteenth of March, 2016 | 2016/03/14
March the Fourteenth, 2016 | 2016/03/14
November the Seventeenth, 2019 | 2019/11/17
The Thirtieth of April, 2016 | 2016/04/30
30 February 2014 | Invalid
September 99, 2017 | Invalid
Sunday, June8, 2015 | Invalid
The Thirty First of April, 2016 | Invalid
20 February 2014tarih-ayrıştırıcıları bir çok desteklenen varsayılan, ancak 17thve Sunday, June 8, 2015biraz daha zor (dile bağlı olarak) ayrıştırmak için vardır.
Thursday, August 25, 2017geçerli olması? Başvuruların DOW'u görmezden geldiğini görüyorum.
