重複の可能性:
Python:複数の区切り文字で文字列を分割
構文に小さな問題があります。文字列と、区切り文字のリストを持つ別の文字列があります。.split
メソッドで分割する必要があります。
方法がわからないようですが、これは確かにタイプエラーになります。
String.split([' ', '{', '='])
複数のセパレーターで分割するにはどうすればよいですか?
重複の可能性:
Python:複数の区切り文字で文字列を分割
構文に小さな問題があります。文字列と、区切り文字のリストを持つ別の文字列があります。.split
メソッドで分割する必要があります。
方法がわからないようですが、これは確かにタイプエラーになります。
String.split([' ', '{', '='])
複数のセパレーターで分割するにはどうすればよいですか?
str.split()
1つのセパレータのみを受け入れます。
re.split()
正規表現を使用して分割するために使用します。
import re
re.split(r"[ {=]", "foo bar=baz{qux")
出力:
['foo', 'bar', 'baz', 'qux']
これは、組み込みのsplit()
メソッドが機能する方法ではありません。単一文字の区切り文字のリストではなく、単一の文字列を区切り文字として使用するだけです。
代わりに、正規表現ベースの分割を使用できます。これはおそらく、必要なすべての区切り文字の「または」である正規表現を作成することを意味します。
splitters = "|".join([" ", "{", "="])
re.split(splitters, my_string)
re
次のように(正規表現)ライブラリを使用してこれを行うことができます。
import re
result=re.split("[abc]", "my string with characters i want to split")
角括弧内の文字は、分割する文字です。
代わりに正規表現からの分割を使用してください。
>>> import re
>>> s = 'toto + titi = tata'
>>> re.split('[+=]', s)
['toto ', ' titi ', ' tata']
>>>
import re
string_test = "abc cde{fgh=ijk"
re.split('[\s{=]',string_test)