Я пишу API, и я хотел бы принять формат ISO 8601 для даты и времени. Я хочу принять только этот формат. Я использую dateutil
на данный момент, но его функция синтаксического анализа принимает все форматы, не связанные с ISO8601. У меня есть простое регулярное выражение, проверяющее формат сейчас, но фактический стандарт позволяет намного больше, чем мое регулярное выражение.Python анализирует только формат iso8601 datetime?
Есть ли простая функция/модуль, который обеспечивает способ анализа только даты или времени в формате 8601?
https://pypi.python.org/pypi/iso8601 так трудно искать Это? –
Он имеет раздел «где он отличается», что означает, что он позволяет использовать некоторые форматы, отличные от ISO8601. –
Поиск google regex формата iso8601 привел меня к этому вопросу: http://stackoverflow.com/questions/12756159/regex-and-iso8601-formated-datetime. Один из ответов предлагает это регулярное выражение:/^ ([\ + -]? \ D {4} (?! \ D {2} \ b)) ((-?) ((0 [1-9] | 1 [ 0-2]) (\ 3 ([12] \ д | 0 [1-9] | 3 [01])) | W ([0-4] \ д | 5 [0-2]) (-? [1-7]) |? (00 [1-9] | 0 [1-9] \ д | [12] \ d {2} | 3 ([0-5] \ д | 6 [1-6]))) ([Т \ с] ((([01] \ д | 2 [0-3])? ((?) [0-5] \ г) | 24 \ :? 00) ([\. ,] \ d +:)) (\ 17 [0-5] \ d ([\] \ d +)) ([ZZ] | ([\ + -]) ([01 (?!)?.? ] \ d | 2 [0-3]):? ([0-5] \ d)?)?)?)? $/ –