現在、次の正規表現パターンを使用して、その文の記号を削除しています。特定の記号以外の正規表現を特定する
sentence = re.sub("[^a-zA-Z]"," ", sentence)
はしかし、私はすべての-
を維持し、文章内の他のすべてのシンボルを削除します。
たとえば、以下の文章では、次のように出力したいと思います。
Input: tim-tam is a tasty, yummy chocolate.
Output: tim-tam is a tasty yummy chocolate
これを行うために現在の正規表現パターンを改善するにはどうすればよいですか?
ありがとうございます。できます。私はこれを答えとして受け入れます。私は '' ''の前に出てくることを無視したいと思いますが、それを[^ a-zA-Z-s]と書くのは正しいですか?たとえば、入力:「犬の食べ物」は仕上げです。出力:「犬の食べ物は仕上げです」 –
いいえ、それはもっと複雑なパターンになります。 '[]'は一連の文字を示します。あなたは否定的な先読みでそれを達成することができます(私の答えにリンクされているドキュメンテーションでそれを探します)。例: '[^ a-zA-Z - '] |'(?!s)'。 ''(?!s)の部分は、' ''の後ろに 's'がマッチします。 '| 'は、またはを意味します。 – Galen