Re: [Python-Dev] Experiment: Adding re to string objects.
MRAB wrote: Sean Reifschneider wrote: I'm mailing this to python-dev because I'd like feedback on the idea of adding an re attribute to strings. I'm not sure if it's a good idea or not yet, but I figure it's worth discussion. The module mentioned here includes a class called restr() which allows you to play with s.re. As some of you may recall, I'm not particularly fond of the recipe: m = re.match(r'whatever(.*)', s) if m: m.group(1) The other morning I came up on the idea of adding an re to strings, so you could do things like: if s.re.match(r'whatever(.*)'): print s.re.group(1) or: if (date.re.match(r'(?Pyear\d\d\d\d)-(?Pmonth\d\d)' or date.re.match(r'(?Pmonth\d\d)-(?Pyear\d\d\d\d)'): print date.re.groupdict('year') [snip] Why not drop the .re part? You would, however, then need a new name for the re split, eg re_split. Or you could make the string the pattern, eg r'whatever(.*)'.match(s). +1 for re support built-in to strings. Michael Foord ___ Python-Dev mailing list Python-Dev@python.org http://mail.python.org/mailman/listinfo/python-dev Unsubscribe: http://mail.python.org/mailman/options/python-dev/fuzzyman%40voidspace.org.uk -- http://www.ironpythoninaction.com/ http://www.voidspace.org.uk/blog ___ Python-Dev mailing list Python-Dev@python.org http://mail.python.org/mailman/listinfo/python-dev Unsubscribe: http://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com
[Python-Dev] Experiment: Adding re to string objects.
I'm mailing this to python-dev because I'd like feedback on the idea of adding an re attribute to strings. I'm not sure if it's a good idea or not yet, but I figure it's worth discussion. The module mentioned here includes a class called restr() which allows you to play with s.re. As some of you may recall, I'm not particularly fond of the recipe: m = re.match(r'whatever(.*)', s) if m: m.group(1) The other morning I came up on the idea of adding an re to strings, so you could do things like: if s.re.match(r'whatever(.*)'): print s.re.group(1) or: if (date.re.match(r'(?Pyear\d\d\d\d)-(?Pmonth\d\d)' or date.re.match(r'(?Pmonth\d\d)-(?Pyear\d\d\d\d)'): print date.re.groupdict('year') So I decided to try experimenting with it and see how I like it. I've also thrown a bunch of other stuff into it and made a module called filtertools: http://pypi.python.org/pypi/filtertools/0.01 ftp://ftp.tummy.com/pub/tummy/Python/python-filtertools/ As the version number is meant to indicate, this is something that I'm still exploring whether it is the right thing done in the right way. Though at the moment the only thing I plan to change is that some of the iterators (having nothing to do with adding re to string objects) probably shouldn't consume the barrier such as the dropwhile() and takewhile(). You might want to do something like: fp = filtertools.reopen('mailbox') for header in filtertools.takewhile([ r'^\S' ], fp.readlines()) : print 'HEADER:', header.rstrip() for continued in filtertools.takewhile([ r'^\s+\S' ], fp.readlines()) : print 'CONTINUED:', continued.rstrip() But, the takewhile() I will consume the first non-matching line. Anyway, I appreciate any feedback folks have. Thanks, Sean -- What we see depends on mainly what we look for. -- John Lubbock Sean Reifschneider, Member of Technical Staff j...@tummy.com tummy.com, ltd. - Linux Consulting since 1995: Ask me about High Availability ___ Python-Dev mailing list Python-Dev@python.org http://mail.python.org/mailman/listinfo/python-dev Unsubscribe: http://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com
Re: [Python-Dev] Experiment: Adding re to string objects.
On Fri, Jul 17, 2009, Sean Reifschneider wrote: I'm mailing this to python-dev because I'd like feedback on the idea of adding an re attribute to strings. I'm not sure if it's a good idea or not yet, but I figure it's worth discussion. The module mentioned here includes a class called restr() which allows you to play with s.re. Ideas should go to python-ideas, please. -- Aahz (a...@pythoncraft.com) * http://www.pythoncraft.com/ If you think it's expensive to hire a professional to do the job, wait until you hire an amateur. --Red Adair ___ Python-Dev mailing list Python-Dev@python.org http://mail.python.org/mailman/listinfo/python-dev Unsubscribe: http://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com
Re: [Python-Dev] Experiment: Adding re to string objects.
Sean Reifschneider wrote: I'm mailing this to python-dev because I'd like feedback on the idea of adding an re attribute to strings. I'm not sure if it's a good idea or not yet, but I figure it's worth discussion. The module mentioned here includes a class called restr() which allows you to play with s.re. As some of you may recall, I'm not particularly fond of the recipe: m = re.match(r'whatever(.*)', s) if m: m.group(1) The other morning I came up on the idea of adding an re to strings, so you could do things like: if s.re.match(r'whatever(.*)'): print s.re.group(1) or: if (date.re.match(r'(?Pyear\d\d\d\d)-(?Pmonth\d\d)' or date.re.match(r'(?Pmonth\d\d)-(?Pyear\d\d\d\d)'): print date.re.groupdict('year') [snip] Why not drop the .re part? You would, however, then need a new name for the re split, eg re_split. Or you could make the string the pattern, eg r'whatever(.*)'.match(s). ___ Python-Dev mailing list Python-Dev@python.org http://mail.python.org/mailman/listinfo/python-dev Unsubscribe: http://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com