问题描述
我正在尝试实现Python中的 SAS TRANWRD 功能,以将'WORD'替换为另一个'WORD'。
我尝试使用Python中可用的 str.replace 和 replace 方法,但是这些方法除了替换以外,还替换了SUBSTRING 。字。
代码:
DICT1 = {'NZ':'NEW ZEALAND'}
for k,v in DICT1.items():
df['COL1'] = df['COL1'].str.replace(k,v)
例如:
NZ COMPANY LIMITED --> NEW ZEALAND COMPANY LIMITED - *(Expected)*
GONZU ENTERPRISE --> GONEW ZEALANDU ENTERPRISE - *(Unexpected)*
在SAS中,此问题应引起注意,因为TRANWRD函数仅在找到空间边界后才替换单词。
有人可以帮助您在Python中实现类似的功能吗?
解决方法
使用利用单词边界元字符copyPass.material.transparent = true
示例:
\b
示例2:
遍历多个短语和替换项
import re
seekword = "Bob"
rplcword = "Bubba"
phrase = "Hello there Bob"
phrasex = re.sub(r"\b"+seekword+r"\b",rplcword,phrase)
print (phrasex)