私は入力文字列を分割して、Pythonでトークン化しようとしていますが、これまでに試みられたすべての試みはPythonの「何も繰り返さない」という結果になります。RE
現在、私はre.splitの代わりにre.findallを使用していますが、私の間違いが私の正規表現とどこにあるのか分かりません。
私の現在の正規表現は、次のようになります。
inputList = re.findall(R "| [。!?、;] | [\ W '] + [\ s]は"、たTestString)
句読点や空白に分割したいと思います。
私が以前試した:
inputList = re.split(R '(\ sは| \ W)*'、たTestString)
しかし、これは私に望ましくない出力文字列を与えるだろう。
私も試してみました:
inputList = re.split(R '| [。!?、;](\は+ S)(+)'、たTestString)
しかしなっていました同じエラー。
たTestStringの例:
たTestString = "!美しいジョン王???私はここにいるそれは時間「試合です。。"
所望の出力の例: '!'
[ '美しい'、 ''、 'キング'、 ''、 'ジョン'、 ''、 ''、「?? '、' '、' '、' '、' '、' '' '' '' '' '' '' '' '' '' '' '' ' ']
私はre.findallで正しい出力を得ていますが、Pythonはエラーを投げており、可能ならばそれを取り除きたいと思います。 誰かが私の正規表現で作っているエラーを指摘できますか?
この作品、あまりにも空の文字列を与えるあなたの例のための
たTestStringの例はに参考になっだろうあなたの質問 –
に答えてください。サンプルのtestStringを含むように編集されました。 – Stravask