1

我的字符串包含一些不相关的字符,例如:

"t1, t2, t3"

如果我按split(",")方法拆分它,我会得到一个列表,其中第二项和第三项还包括空格。

如何使用乘法分隔符拆分所需的字符串?

4

5 回答 5

6

将它们分开", "(注意空格)或strip之后的单词:

[e.strip() for e in "t1, t2, t3,t4".split(",")]
>>> ['t1', 't2', 't3', 't4']
于 2013-01-16T09:04:09.243 回答
4

如果您不需要空格,您可以使用:

"t1, t2, t3,t4".replace(" ", "").split(",")
于 2013-01-16T09:54:03.387 回答
2

如果逗号后有任意空格,只需使用列表推导去除空格:

[t.strip() for t in inputstring.split(',')]

或使用正则表达式拆分(在这种情况下有点矫枉过正):

import re

re.split(r',\s*', inputstring)

示范:

>>> inputstring = 't1, t2, t3,t4,   t5'
>>> [t.strip() for t in inputstring.split(',')]
['t1', 't2', 't3', 't4', 't5']
>>> import re
>>> re.split(r',\s*', inputstring)
['t1', 't2', 't3', 't4', 't5']
于 2013-01-16T09:03:51.393 回答
1

您是否尝试过明显的:

>>> "t1, t2, t3".split(', ')
['t1', 't2', 't3']
于 2013-01-16T09:04:27.563 回答
0

使用条带()。

s = "t1, t2, t3"
s = [x.strip() for x in s.split(",")]
print s
于 2013-01-16T09:05:39.580 回答