Python::删除所有引用,直到第一个空格
如何删除字符串中直到第一个空格的所有引用,以便:Python::删除所有引用,直到第一个空格,python,string,Python,String,如何删除字符串中直到第一个空格的所有引用,以便: strings = ["1234 zoocore", "4356 00's punk"] 变成:[zoocore,00的朋克] 我试过正则表达式: for s in strings: new_s = re.sub(r'\d+','', s) 但这也会擦除00',我不希望这样。您可以使用maxsplit参数: >>> strings = ["1234 zoocore", "4356 00's punk"] >&g
strings = ["1234 zoocore", "4356 00's punk"]
变成:[zoocore,00的朋克]
我试过正则表达式:
for s in strings:
new_s = re.sub(r'\d+','', s)
但这也会擦除00',我不希望这样。您可以使用maxsplit参数:
>>> strings = ["1234 zoocore", "4356 00's punk"]
>>> [s.split(None, 1)[1] for s in strings]
['zoocore', "00's punk"]
如果字符串不包含空格,则可以使用-1作为索引:
>>> strings = ["1234 zoocore", "4356 00's punk", "rock"]
>>> [s.split(None, 1)[-1] for s in strings]
['zoocore', "00's punk", 'rock']
您的错误是没有在字符串开头锚定比赛,并且没有包含空格。这里有一个固定版本:
>>> [re.sub(r'^\d* ', '', s) for s in strings]
['zoocore', "00's punk"]
还有另一种方法,找到空间(如果有的话),然后切片字符串
>>> strings = ["1234 zoocore", "4356 00's punk", "rock"]
>>> [s[s.find(' ') + 1:] for s in strings]
['zoocore', "00's punk", 'rock']
从helpre:\A仅在字符串开头匹配。可能会有帮助。。。因此我相信\A.*\s将匹配字符串的开头,任何字符直到第一个空格。