gpt4 book ai didi

python - 如何在Python中的正则表达式中使用字典?

转载 作者:行者123 更新时间:2023-12-01 04:39:50 25 4
gpt4 key购买 nike

在正则表达式中使用变量很容易,实现这一点的一种方法是:

>>> z = '23'
>>> re.sub(r'p[kv]', r"%s" %z, 'pvkkpkvkk')
'23kk23vkk'

但是如果替换值存储在字典中怎么办:

d = {'k':'23', 'v':'24'}

我想使用字典来替换替换值。我想要这样的东西:

re.sub(r'p([kv])', r"%s" %d[\1], 'pvkkpkvkk')

我知道这行不通。请帮我找到正确的正则表达式。预期输出与上面相同。

最佳答案

您可以传递任意函数,该函数需要单个 match对象并返回一个字符串来替换它,如 repl对于 re.sub ;例如:

>>> import re
>>> d = {'k': '23', 'v': '24'}
>>> re.sub(
r'p([kv])',
lambda match: d[match.group()[1]],
'pvkkpkvkk',
)
'24kk23vkk'

关于python - 如何在Python中的正则表达式中使用字典?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30963505/

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