如何制作python回复sub不会错过模式

2024-05-20 00:56:08 发布

您现在位置:Python中文网/ 问答频道 /正文

这是我的密码:

re.sub(r"([GAT])G", r"\g<1>A", "GCGGG")

结果是:“GCGAG”

但我真的想得到的是“GCGAA”,我该怎么办?你知道吗

为什么最后一个“G”没有变为“A”?你知道吗


Tags: re密码gatgcgaagcgaggcggg
1条回答
网友
1楼 · 发布于 2024-05-20 00:56:08

GG是第一个匹配;它的第二个G不能参与另一个匹配。您可以使用lookbehind检查一个模式前面是否有另一个模式,但不必在匹配中包含该检查:

re.sub(r"(?<=[GAT])G", "A", "GCGGG")

相关问题 更多 >