Python:用'和 - 分割字符串

时间:2011-05-05 07:53:37

标签: python

如何按撇号'-拆分字符串?

例如,给定string = "pete - he's a boy"

6 个答案:

答案 0 :(得分:17)

您可以使用正则表达式模块的拆分功能:

re.split("['-]", "pete - he's a boy")

答案 1 :(得分:8)

string = "pete - he's a boy"
result = string.replace("'", "-").split("-")
print result

['pete ', ' he', 's a boy']

答案 2 :(得分:2)

这种感觉有点像hacky但你可以做到:

string.replace("-", "'").split("'")

答案 3 :(得分:2)

这可以在没有正则表达式的情况下完成。在字符串上使用split方法(并使用列表推导 - 实际上与@Cédric Julien's earlier answer

相同

首先在一个分离器上分割一次,例如' - '然后拆分数组的每个元素

l = [x.split("'") for x in "pete - he's a boy".split('-')]

然后平坦列表

print ( [item for m in l for item in m ] )

['pete ', ' he', 's a boy']

答案 4 :(得分:0)

>>> import re
>>> string = "pete - he's a boy"
>>> re.split('[\'\-]', string)
['pete ', ' he', 's a boy']

希望这会有所帮助:)

答案 5 :(得分:0)

import re
string = "pete - he's a boy"
print re.findall("[^'-]+",string)

结果

['pete ', ' he', 's a boy']

如果你想在分割之前或之后没有空白:

import re
string = "pete - he's a boy"
print re.findall("[^'-]+",string)
print re.findall("(?! )[^'-]+(?<! )",string)

结果

['pete', 'he', 's a boy']