Two RE proposals
David LeBlanc
whisper at oz.net
Fri Jul 26 17:50:27 EDT 2002
More information about the Python-list mailing list
Fri Jul 26 17:50:27 EDT 2002
- Previous message (by thread): Two RE proposals
- Next message (by thread): Two RE proposals
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
> David> 1. Add a substitution operator - in the example below > it's "!<..>" > > David> word = r"\w*" > David> punct = r"[,.;?]" > David> wordpunct = re.compile(r"!<word>!<punct>") > > How about > > word = r"\w*" > punct = r"[,.;?]" > wordpunct = re.compile(r"%(word)s%(punct)s" % locals()) > > which you can do today? (I'd also argue that a word would be "\w+".) I considered something like this, but it's too verbose, not to mention confusing - what's inherently wrong with my idea? I don't think it's counter-pythonic. I also considered the (?P!<name>) construct, but it's on the verbose side too. (I actually need to go read up on this if it's possible to find doc for it - I am not familiar with the idiom of "locals()".) > David> 2. Make r"(a|b)*" mean any number of a's or b's. This doesn't > David> work, at least in some situations with the current > re compiler > David> - the "any" op "*" doesn't seem to span over a parened > David> group. > > The * doesn't (and shouldn't) operate over grouping parens. You're asking > it to supply you with a variable number of groups, which it can't do. You're right - it doesn't operate over grouping parens, but why _shouldn't_ it? IIRC, _some_ regex pacakges could do this... > Besides, what's wrong with r"([ab]*)"? Nothing - unless a or b are more then single charachters or literal strings. Dave LeBlanc
- Previous message (by thread): Two RE proposals
- Next message (by thread): Two RE proposals
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
More information about the Python-list mailing list