如何在python中用一个单词替换多个单词?

jpe*_*ped 3 python string replace

我有一些字符串可能包含某事物的缩写或全名,我想将它们全部替换为该单词的相同变体。

例如,

“8 gigs”、“8 GB”和“8 GBs”应全部更改为“8 GB”

最好的方法是什么?每个人都有单独的替换吗?

另外,我试图对多个单词(即兆字节、太字节)执行此操作,每个单词是否都需要不同的替换,或者是否有一种方法将它们全部放在一个单词中?

Bri*_*ien 6

一个简单的re.sub方法就能满足你的需要。

>>> import re
>>> s = 'gigabytes, foo gigs; foo gbs'
>>> re.sub('(gigabytes|gigs|gbs)','gigabytes',s)
'gigabytes, foo gigabytes; foo gigabytes'
Run Code Online (Sandbox Code Playgroud)