如何更改python字符串,例如替换某个单词而不是另一个?

2024-04-20 09:44:42 发布

您现在位置:Python中文网/ 问答频道 /正文

这里的问题是,我有一个类似“我爱爸爸,我爱妈妈”的python字符串,在这个字符串中我想要的是“我爱妈妈,我爱爸爸”。你知道吗

这是python字符串

s='i love dad and  i love mom',
s1=s.replace('dad','mom'),
print(s1)

这里的输出是:我爱妈妈,我爱妈妈

但我需要的输出是:我爱妈妈,我爱爸爸


Tags: and字符串replace爸爸printmoms1妈妈
1条回答
网友
1楼 · 发布于 2024-04-20 09:44:42

创建包含替换项的dict

replacements = {
    'daddy': 'mom',
    'mom': 'daddy',
}

创建一个函数,根据匹配对象从dict返回正确的替换:

def find_replacement(m):
    return replacements[m.group(1)]

然后使用回复sub你知道吗

text = "I love daddy and I love mom"
regex = r'({})'.format(r'|'.join(re.escape(w) for w in replacements))
result = re.sub(regex, find_replacement, text)
print(result)

相关问题 更多 >