[New-bugs-announce] [issue24929] _strptime.TimeRE should not enforce range in regex
Steve Yeung
report at bugs.python.org
Mon Aug 24 23:39:09 CEST 2015
New submission from Steve Yeung:
Currently, the regex in TimeRE enforces the numeric ranges. For example:
'm': r"(?P<m>1[0-2]|0[1-9]|[1-9])",
As a result, an invalid month will cause an generic regex error:
ValueError: time data '2015/16/5' does not match format '%Y/%m/%d'
However, if we relax the regex to not check the range and allow datetime to handle it:
'm': r"(?P<m>\d{1,2})"
The error will be handle in datetime instead and the error will be much more helpful:
ValueError: month must be in 1..12
Please consider relaxing the regex for numeric ranges in _strptime.TimeRE.
----------
components: Library (Lib)
messages: 249074
nosy: Steve Yeung
priority: normal
severity: normal
status: open
title: _strptime.TimeRE should not enforce range in regex
type: behavior
versions: Python 2.7
_______________________________________
Python tracker <report at bugs.python.org>
<http://bugs.python.org/issue24929>
_______________________________________
More information about the New-bugs-announce
mailing list