如何使python re.sub不会错过模式

时间:2017-02-16 05:06:01

标签: python regex

这是我的代码:

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

给了我结果:'GCGAG',

但我真的想得到'GCGAA',我该怎么办?

为什么最后一个'G'没有变成'A'?

1 个答案:

答案 0 :(得分:0)

GG是第一场比赛;其第二个G无法参加另一场比赛。您可以使用lookbehind检查模式是否在其他模式之前,但不包括匹配中的检查:

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