1

重複の可能性:
Python:複数の区切り文字で文字列を分割

構文に小さな問題があります。文字列と、区切り文字のリストを持つ別の文字列があります。.splitメソッドで分割する必要があります。

方法がわからないようですが、これは確かにタイプエラーになります。

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

複数のセパレーターで分割するにはどうすればよいですか?

4

5 に答える 5

7

str.split()1つのセパレータのみを受け入れます。

re.split()正規表現を使用して分割するために使用します。

import re

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

出力:

['foo', 'bar', 'baz', 'qux']
于 2012-11-12T08:42:25.543 に答える
1

これは、組み込みのsplit()メソッドが機能する方法ではありません。単一文字の区切り文字のリストではなく、単一の文字列を区切り文字として使用するだけです。

代わりに、正規表現ベースの分割を使用できます。これはおそらく、必要なすべての区切り文字の「または」である正規表現を作成することを意味します。

splitters = "|".join([" ", "{", "="])
re.split(splitters, my_string)
于 2012-11-12T08:43:33.477 に答える
0

re次のように(正規表現)ライブラリを使用してこれを行うことができます。

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

角括弧内の文字は、分割する文字です。

于 2012-11-12T08:44:07.643 に答える
0

代わりに正規表現からの分割を使用してください。

>>> import re
>>> s = 'toto + titi = tata'
>>> re.split('[+=]', s)
['toto ', ' titi ', ' tata']
>>> 
于 2012-11-12T08:45:15.690 に答える
0
import re
string_test = "abc cde{fgh=ijk"
re.split('[\s{=]',string_test)
于 2012-11-12T08:47:33.310 に答える