我正在尝试更改st。到大街,大街。使用.replace()获取单个单元格中的地址等信息。例如:WEST ST。应该是WEST STREET或MOUNT PEBBLE RD。应该是山石路
这是我的代码:
if 'STREET' not in address and address.find('ST.'):
address = address.replace('ST','STREET')
结果给了我WESTREET街。如何在不更改地址名称的情况下保持原样?我尝试使用.split(),但是大多数单元格的列表长度不同,因此非常令人困惑。
答案 0 :(得分:3)
尝试一下:
if 'STREET' not in address and address.find('ST.'):
address = address.replace(' ST.',' STREET')
答案 1 :(得分:3)
尝试一下,代码越少越好。
address = "WEST ST."
if address.find('ST.'):
address = address.replace(' ST.',' STREET')
print(address)
答案 2 :(得分:2)
尝试使用带边界的Regex。
例如:
import re
s = """WEST ST
MOUNT PEBBLE RD"""
toReplace = {"ST": 'STREET', "RD": "ROAD", "ave": "avenue"}
for k,v in toReplace.items():
s = re.sub(r"\b" + k + r"\b", v, s)
print(s)
输出:
WEST STREET
MOUNT PEBBLE ROAD
答案 3 :(得分:2)
我这样编辑了您的代码:
address = "WEST ST."
if 'STREET' not in address and address.find('ST.'):
address = address.replace('ST.','STREET')
print (address)
这是结果:
西街
您必须替换“ ST”。不是“ ST”