New submission from Steve Newcomb:

The '\\g<startquote>' in the below does not work:

>>> repr( re.compile( '\\<\\!ENTITY[ \\011\\012\\015]+\\%[ 
>>> \\011\\012\\015]*(?P<entityName>[A-Za-z][A-Za-z0-9\\.\\-\\_\\:]*)[ 
>>> \\011\\012\\015]*(?P<startquote>[\\042\\047])(?P<entityText>.+?)\\g<startquote>[
>>>  \\011\\012\\015]*\\>', re.IGNORECASE | re.DOTALL).search( '<!ENTITY % 
>>> m.mixedContent "( #PCDATA | i | b)">'))
'None'

In the following, the '\\g<startquote>' has been replaced by '\\2'.  It works.

>>> repr( re.compile( '\\<\\!ENTITY[ \\011\\012\\015]+\\%[ 
>>> \\011\\012\\015]*(?P<entityName>[A-Za-z][A-Za-z0-9\\.\\-\\_\\:]*)[ 
>>> \\011\\012\\015]*(?P<startquote>[\\042\\047])(?P<entityText>.+?)\\2[ 
>>> \\011\\012\\015]*\\>', re.IGNORECASE | re.DOTALL).search( '<!ENTITY % 
>>> m.mixedContent "( #PCDATA | i | b)">'))
'<_sre.SRE_Match object at 0x7f77503d1918>'

Either this feature is broken or the re module documentation is somehow 
misleading me.

(Yes, I know there is an XML error in the above.  That's because it's SGML.)

----------
components: Regular Expressions
messages: 170605
nosy: ezio.melotti, mrabarnett, steve.newcomb
priority: normal
severity: normal
status: open
title: backreference to named group does not work
type: behavior
versions: Python 2.7

_______________________________________
Python tracker <rep...@bugs.python.org>
<http://bugs.python.org/issue15956>
_______________________________________
_______________________________________________
Python-bugs-list mailing list
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com

Reply via email to