Pythonで複数のデリミタで文字列を分割する
オンラインでいくつかの答えを見つけましたが、私はここで必要とされると思われる正規表現の経験がありません。
私は、 ';' または ', ' のいずれかで分割する必要がある文字列を持っています。 つまり、セミコロンかコンマの後にスペースを置く必要があります。後続のスペースがない個々のカンマはそのままにしておきます
文字列の例。
"b-staged divinylsiloxane-bis-benzocyclobutene [124221-30-3], mesitylene [000108-67-8]; polymerized 1,2-dihydro-2,2,4- trimethyl quinoline [026780-96-1]"
は、以下を含むリストに分割する必要があります。
('b-staged divinylsiloxane-bis-benzocyclobutene [124221-30-3]' , 'mesitylene [000108-67-8]', 'polymerized 1,2-dihydro-2,2,4- trimethyl quinoline [026780-96-1]')
427
3
幸いなことに、Pythonにはこれが組み込まれています :)
Update:
あなたのコメントに続きます。
str.replace('; ', ', ')
を行い、次にstr.split(', ')
を行う。このように、正規表現は次のようになります。