【发布时间】:2021-06-10 08:39:03
【问题描述】:
就我而言,我想捕获文本中的重复字符;同时,重复图案前后最多3个字符也应被捕获。例如,
| original | prefix | repeat | postfix |
|---|---|---|---|
| 1aab | 1 | aa | b |
| 1aaab | 1 | aaa | b |
| 1234aaabcde | 234 | aaa | bcd |
我在 python 中创造了一个 RE 字符串:
reobj = re.compile("(?P<prefix>.{0,3}) (?P<repeat>(?P<infix>[a-z])(?P=infix){1,}) (?P<postfix>.{0,3})", re.IGNORECASE | re.VERBOSE | re.DOTALL)
但它给出了这样的结果:
| original | prefix | repeat | postfix | is desired? |
|---|---|---|---|---|
| 1aab | 1 | aa | b | yes |
| 1aaab | 1a | aa | b | no |
| 1234aaabcde | 234 | aaa | bcd | yes |
有什么帮助吗?谢谢。
【问题讨论】:
标签: python regex backreference