试图拆分字符串

时间:2012-11-12 08:39:00

标签: python

  

可能重复:
  Python: Split string with multiple delimiters

我的语法问题很小。我有一个字符串和另一个包含分隔符列表的字符串。我需要通过.split方法拆分它。

我似乎无法弄明白,这肯定会给出一个Type错误。

String.split([' ', '{', '='])

如何将其与多个分隔符分开?

5 个答案:

答案 0 :(得分:7)

str.split()只接受一个分隔符。

使用re.split()分割使用正则表达式。

import re

re.split(r"[ {=]", "foo bar=baz{qux")

输出:

['foo', 'bar', 'baz', 'qux']

答案 1 :(得分:1)

这不是内置split()方法的工作原理。它只使用一个字符串作为分隔符,而不是单字符分隔符列表。

您可以使用regular-expression based拆分。这可能意味着构建一个正则表达式,它是所有所需分隔符的“或”:

splitters = "|".join([" ", "{", "="])
re.split(splitters, my_string)

答案 2 :(得分:0)

您可以使用re(正则表达式)库执行此操作,如下所示:

import re
result=re.split("[abc]", "my string with characters i want to split")

方括号中的字符是您要拆分的字符。

答案 3 :(得分:0)

使用正则表达式拆分:

>>> import re
>>> s = 'toto + titi = tata'
>>> re.split('[+=]', s)
['toto ', ' titi ', ' tata']
>>> 

答案 4 :(得分:0)

import re
string_test = "abc cde{fgh=ijk"
re.split('[\s{=]',string_test)