[Tutor] Example of use of (?P<name>) and (?P=name) in Python regular expressions?

Michael Hannon jm_hannon at yahoo.com
Fri Dec 4 02:49:15 CET 2009


Hi, folks.  I just wanted to thank Martin Walsh and Kent Johnson, both of whom furthered my education by replying (on-list) that the "P=" syntax is used to refer to a named group in the same regular expression, i.e., the one in which the "P<name>" construct was used in the first place.  This is as opposed to the thing I was trying to do, which was to use the "P=" syntax in a substitution.

-- Mike



----- Original Message ----
From: Michael Hannon <jm_hannon at yahoo.com>
To: tutor at python.org
Sent: Sat, November 28, 2009 3:15:36 PM
Subject: [Tutor] Example of use of (?P<name>) and (?P=name) in Python regular expressions?

Greetings.  While looking into the use of regular expressions in Python, I saw that it's possible to name match groups using:

    (?P<name>...)

and then refer to them using:

    (?P=name)

I was able to get this to work in the following, nonsensical, example:

    >>> x = 'Free Fri Fro From'
    >>> y = re.sub(r'(?P<test>\bFro\b)', r'Frodo (--matched from \g<test>)', x)
    >>> y
    'Free Fri Frodo (--matched from Fro) From'
    >>> 

But, as you can see, to refer to the match I used the "\g" notation (that I found some place on the web).

I wasn't able to find a way to use the "P=" syntax, and I wasn't able to find any working examples of this syntax on the web.

If you have a working example of the use of the "P=" syntax, will you please send it to me?

Thanks.

-- Mike



      
_______________________________________________
Tutor maillist  -  Tutor at python.org
To unsubscribe or change subscription options:
http://mail.python.org/mailman/listinfo/tutor



      


More information about the Tutor mailing list