gpt4 book ai didi

python - 如何精确查找和替换

转载 作者:太空宇宙 更新时间:2023-11-04 10:38:51 25 4
gpt4 key购买 nike

我有一个文本文件,内容很像下面

G12

G10,11

GO12

GO10,12

我想做的是将所有“G”替换为“”,而不是将“GO”替换为“O”。

我正在尝试使用正则表达式,所以首先我要处理没有逗号的行

with open(file) as f:
for line in f:
if re.match(r"%s[0-9]+" % 'G', line):
input = line.strip('G')

事实证明,“G10,11\n”字符串也匹配正则表达式模式,这让我很困惑。

我的陈述有什么问题吗,或者有没有更简单的方法来做到这一点?非常感谢,

最佳答案

这里有一些选择。直接翻译您的要求可以得到:G(?!O),您可以将其替换为空字符串。可以这样做:

line = re.sub(r"G(?!O)", "", line)

G 匹配 G(?!O) 仅当后面的字符不是 O 时才匹配>.

您可能想改用 G(?=\d) 来匹配 G 后跟一个数字。

关于python - 如何精确查找和替换,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21983626/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com