、、、、、および空白を区切り文字として使用し-
て文字列を分割したいと考えています。空白でない限り、区切り文字を保持したい。+=
==
=
+
私は次のコードでこれを達成しようとしました:
def tokenize(s):
import re
pattern = re.compile("(\-|\+\=|\=\=|\=|\+)|\s+")
return pattern.split(s)
print(tokenize("hello-+==== =+ there"))
私は出力が
['hello', '-', '+=', '==', '=', '=', '+', 'there']
しかし、私は得た
['hello', '-', '', '+=', '', '==', '', '=', '', None, '', '=', '', '+', '', None, 'there']
None
余分なs と空の文字列がかなりあることを除いて、これはほとんど私が望んでいたものです。
なぜこのように動作するのですか? また、どうすれば変更して必要なものを取得できますか?