New submission from Brandon Corfman: Python's documentation for the re.match function is match(pattern, string, [flags]) where pattern can be either a regex string or a compiled regex object. If it's a compiled regex object, then supplying an optional flag to re.match (in my case, re.IGNORECASE) doesn't work and, more to the point, fails silently. I think this should throw an exception if it's not going to work.
See http://mysite.verizon.net/bcorfman/2007/12/something-i-hate-about-pythons-re.html for a discussion. A possible change (proposed by effbot) is below: Index: re.py =================================================================== --- re.py (revision 52330) +++ re.py (working copy) @@ -224,6 +224,7 @@ return p pattern, flags = key if isinstance(pattern, _pattern_type): + assert not flags return pattern if not sre_compile.isstring(pattern): raise TypeError, "first argument must be string or compiled pattern" ---------- components: Regular Expressions messages: 58808 nosy: bcorfman severity: normal status: open title: re.match ignores optional flags when receiving a compiled regex pattern type: behavior versions: Python 2.5 __________________________________ Tracker <[EMAIL PROTECTED]> <http://bugs.python.org/issue1661> __________________________________ _______________________________________________ Python-bugs-list mailing list Unsubscribe: http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com