gpt4 book ai didi

Python:re 模块替换字典中的值

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

我今天开始研究 Python 中可用的方便的 re 模块,希望我能在 re.sub 方面得到帮助

我的文件:

avid "Av.Id
fated "fEIt.Id
leaded "lEd.Id
wicked "wIk.Id

如果匹配 "(v|t|d|k)\.Id" 我想转为 "\.(v|t|d|k)Id" 这样输出看起来像:

avid "A.vId
fated "fEI.tId
leaded "lE.dId
wicked "wI.kId

我可以将我的字符串与 re.search 很好地匹配,但是当字母每次都不同时(v、t、d、k 等),我仍然不知道如何进行实际替换).感谢您的帮助。

最佳答案

使用 re.sub() 并引用保存的组 (v|t|d|k)使用 \g<1>语法:

import re

PATTERN = re.compile('(v|t|d|k)\.Id')
with open('input.txt') as f:
for line in f:
print PATTERN.sub(".\g<1>Id", line)

它打印:

avid "A.vId
fated "fEI.tId
leaded "lE.dId
wicked "wI.kId

关于Python:re 模块替换字典中的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23162300/

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