Слишком слабый разбор дат из смешанных источников, если данные, вероятно, не очень хорошая идея.Некоторые вещи, такие как преобразование текста в речь Microsoft, могут пробовать, но иногда это может приводить к чтению последовательных дат в виде
первого октября, первого ноября, первого декабря, тринадцатого января и т. Д.
Единственный способ свободного разбора можно сделать несколько надежным, если можно использовать другие подсказки, чтобы связать даты с тем, что их написал.Если у вас есть несколько дат, которые встречаются на верхнем уровне определенного фида, и вы обнаружите, что все шаблоны синтаксического анализа, которые работают для всех них, дают одинаковые результаты, то, вероятно, этот шаблон синтаксического анализа правильно анализирует даты.Однако большая часть такой работы, скорее всего, будет заключаться не в разборе дат, а скорее в (1) обеспечении того, чтобы даты, записанные в разных форматах, группировались отдельно, и (2) в предоставлении средств, с помощью которых оператор может помочьпрограмма в тех местах, где возникают проблемы.
Кстати, я не знаю, используют ли какие-либо программы анализа дат присоединенные рабочие дни в качестве проверки формата, но они часто могут помочь.Например, «2-1-2018» может быть либо 2 января, либо 1 февраля, но «четверг 2-1-2018» может быть только последним.Это может быть полезно при разборе числовых дат из источника, формат которого еще не полностью установлен, чтобы определить, какой будет день недели для каждого метода синтаксического анализа, и проверить, содержит ли входные данные что-то, похожее на будний день, совпадающее с одним, но не с другим.