gpt4 book ai didi

python - 如何用该匹配的转换替换重新匹配?

转载 作者:太空狗 更新时间:2023-10-30 02:02:46 25 4
gpt4 key购买 nike

例如我有一个字符串:

The struct-of-application and struct-of-world

使用re.sub,它将用预定义的字符串替换匹配项。如何用匹配内容的转换替换匹配项?获取,例如:

The [application_of_struct](http://application_of_struct) and [world-of-struct](http://world-of-struct)

如果我写一个简单的正则表达式 ((\w+-)+\w+) 并尝试使用 re.sub,似乎我不能使用我的东西匹配作为替换的一部分,更不用说编辑匹配的内容了:

In [10]: p.sub('struct','The struct-of-application and struct-of-world')
Out[10]: 'The struct and struct'

最佳答案

使用 function for the replacement

s = 'The struct-of-application and struct-of-world'
p = re.compile('((\w+-)+\w+)')
def replace(match):
return 'http://{}'.format(match.group())
#for python 3.6+ ...
#return f'http://{match.group()}'

>>> p.sub(replace, s)

'The http://struct-of-application and http://struct-of-world'
>>>

关于python - 如何用该匹配的转换替换重新匹配?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39009967/

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