我有一个字符串列表(len 10000),其中一些看起来像
Belin (*) 9
München 12
我想在字符串的末尾删除数字和(*)以获得纯城市名称
Berlin
München
我可以在这上面使用rstrip吗?
答案 0 :(得分:2)
使用正则表达式函数re.sub
删除带有额外前导空格(\(\*\)
)的(*)(\d+
)和数字(\s*
):
>>> cities = [
... 'Belin (*) 9',
... 'München 12',
... 'Los Angeles 9'
... ]
>>> [re.sub('\s*\(\*\)|\s*\d+', '', city) for city in cities]
['Belin', 'München', 'Los Angeles']
使用str.rstrip
,您需要指定要删除的所有字符:
>>> [city.rstrip(' 0123456789(*)') for city in cities]
['Belin', 'München', 'Los Angeles']