This issue tracker has been migrated to GitHub ,
and is currently read-only.
For more information,
see the GitHub FAQs in the Python's Developer Guide.
Created on 2002年02月13日 03:22 by phr, last changed 2022年04月10日 16:04 by admin. This issue is now closed.
| Messages (7) | |||
|---|---|---|---|
| msg53476 - (view) | Author: paul rubin (phr) | Date: 2002年02月13日 03:22 | |
There doesn't seem to be any reasonable way to search a string backwards for a regular expression, starting from a given character position. I notice that the underlying C regular expression implemention supports a direction flag. I propose adding a direction flag to the search function on match objects: r = re.compile(...) m = re.search(str, startpos=5000, endpos=-1, dir=-1) would search in str for r, starting at location 5000 and searching backwards through location 0 (the beginning of the string). This is useful in (for example) text editors where you want to be able to search forwards or backwards, or if you're parsing an html file and see a </table> and want to find the matching <table>, etc. phr |
|||
| msg53477 - (view) | Author: Martin v. Löwis (loewis) * (Python committer) | Date: 2002年03月27日 20:32 | |
Logged In: YES user_id=21627 Moved to feature requests tracker. |
|||
| msg53478 - (view) | Author: paul rubin (phr) | Date: 2003年09月29日 19:53 | |
Logged In: YES user_id=72053 Another way to do this would be add a direction flag to the regexp itself, like re.R (for reverse) if R isn't already in use: group = re.search(pat, str, start, end, re.R) or something like that. I continue to want this feature. It's very handy for writing web scrapers, which I do fairly frequently. |
|||
| msg72784 - (view) | Author: Matthew Barnett (mrabarnett) * (Python triager) | Date: 2008年09月08日 17:26 | |
Does this request still stand? I'm working on the re module at the moment. |
|||
| msg72832 - (view) | Author: Amaury Forgeot d'Arc (amaury.forgeotdarc) * (Python committer) | Date: 2008年09月09日 09:05 | |
Why not? I needed such a feature some time ago. But if possible, it should be a keyword argument: re.search(..., backwards=True) similar to list.sort(reverse=True) |
|||
| msg73549 - (view) | Author: Matthew Barnett (mrabarnett) * (Python triager) | Date: 2008年09月22日 00:51 | |
Implemented as part of #3825. |
|||
| msg225871 - (view) | Author: Adam Bartoš (Drekin) * | Date: 2014年08月25日 10:38 | |
Hello, I wanted to use this feature and found this issue. It is marked as closed, being a duplicate of another closed issue. However the feature is actually not present. In 2008 it was planned to be added by Matthew Barnett in #3825, but the work of improving re module moved to bigger project under #2636 which resulted in regex package to be evenually included in stdlib. So unless regex is included in stdlib, one should try regex package (e.g. pip install regex). I've put here this summary just in case there is someone like me who looked for the feature and found this issue. |
|||
| History | |||
|---|---|---|---|
| Date | User | Action | Args |
| 2022年04月10日 16:04:59 | admin | set | github: 36095 |
| 2014年08月25日 10:38:33 | Drekin | set | nosy:
+ Drekin messages: + msg225871 |
| 2008年09月22日 01:00:03 | benjamin.peterson | set | status: open -> closed resolution: duplicate superseder: Major reworking of Python 2.5.2 re module |
| 2008年09月22日 00:51:46 | mrabarnett | set | messages: + msg73549 |
| 2008年09月21日 12:00:33 | timehorse | set | nosy: + timehorse |
| 2008年09月09日 09:05:26 | amaury.forgeotdarc | set | nosy:
+ amaury.forgeotdarc messages: + msg72832 |
| 2008年09月08日 17:26:22 | mrabarnett | set | nosy:
+ mrabarnett messages: + msg72784 |
| 2002年02月13日 03:22:55 | phr | create | |