我有一个字符串:"y, i agree with u."
我有数组字典[(word_will_replace, [word_will_be_replaced])]
:
[('yes', ['y', 'ya', 'ye']), ('you', ['u', 'yu'])]
我想将 'y' 替换为 'yes' 并将 'u' 替换为 'you'根据数组字典。
所以我想要的结果是:“是的,我同意你的看法。”
我想保留标点符号。
最佳答案
import re
s="y, i agree with u. yu."
l=[('yes', ['y', 'ya', 'ye']), ('you', ['u', 'yu'])]
d={ k : "\\b(?:" + "|".join(v) + ")\\b" for k,v in l}
for k,r in d.items(): s = re.sub(r, k, s)
print s
输出
yes, i agree with you. you.
关于python - 用python中字符串中的另一个单词替换单词,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16600823/