Есть ли способ проанализировать string which is missing year
до datetime
, но мы знаем, что datetime
является ближайшей датой NOW, которая соответствует комбинации Day of Week
и Day of Month
. Пример строки:
TUE 4 FEBRUARY 1 PM//
WED 05 FEBRUARY 0100 PM//
FRI 21 FEBRUARY 100 PM//
В настоящее время я знаю, что даты приходятся на 2020 год, поэтому я добавляю «2020» и использую следующий оператор
var str = "05/12/" + "2020" + "0100 PM"
/*str is obtained by string manipulation as I know the year*/
DateTime dt;
if (DateTime.TryParseExact(toplinks[i].iDate,
"dd/MM/yyyy hhmm tt",
CultureInfo.InvariantCulture,
DateTimeStyles.None,
out dt))
Дополнительные сложности заключаются в том, что день месяца может быть либо 'dd'
, либо просто 'd'
. И временной интервал может быть любой комбинацией 'hhmm tt'
или 'hmm tt'
или 'h tt'
, и временной интервал падает от "10:00AM"
до "07:00PM"