我有以下字符串:
string = "Peter Pan, Pete Sampras; Little Pete"
我需要按名称拆分:
split_string = ["Peter Pan", "Pete Sampras", "Little Pete"]
我正在尝试使用re.findall
,但我遇到了一些麻烦:
print re.findall(r'[,;]', string)
[";", ";", ";"]
我在这里做错了什么?我如何在这里正确使用re.findall
或等价物来分割字符串?
答案 0 :(得分:2)
按如下方式使用re.split
将拆分字符串:
string = "Peter Pan, Pete Sampras; Little Pete"
print re.split(r'[,;]', string)
["Peter Pan", "Pete Sampras", "Little Pete"]
答案 1 :(得分:1)
或者,如果您不确定分隔符但确定它们之间有空格(或更多)的名称,您可以使用:
re.findall("\w+\s+\w+", target_string)
这意味着只会跳过一个单词的名称,因为\w
代表一个字母,而\s
代表一个空格,+
表示贪婪搜索一个或多个元件。