gpt4 book ai didi

Python用函数的输出替换字符串模式

转载 作者:IT老高 更新时间:2023-10-28 20:30:41 26 4
gpt4 key购买 nike

我在 Python 中有一个字符串,比如说 快速的@red fox 跳过了@lame brown dog。

我正在尝试将每个以 @ 开头的单词替换为将单词作为参数的函数的输出。

def my_replace(match):
return match + str(match.index('e'))

#Psuedo-code

string = "The quick @red fox jumps over the @lame brown dog."
string.replace('@%match', my_replace(match))

# Result
"The quick @red2 fox jumps over the @lame4 brown dog."

有没有聪明的方法来做到这一点?

最佳答案

您可以将函数传递给 re.sub .该函数将接收一个匹配对象作为参数,使用 .group() 将匹配提取为字符串。

>>> def my_replace(match):
... match = match.group()
... return match + str(match.index('e'))
...
>>> string = "The quick @red fox jumps over the @lame brown dog."
>>> re.sub(r'@\w+', my_replace, string)
'The quick @red2 fox jumps over the @lame4 brown dog.'

关于Python用函数的输出替换字符串模式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12597370/

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