大きなテキストファイルがありますが、長い行が=
とその後にnewline
文字を書き込むことによって複数の行に分割されることがあります。 (KaggleのEnron電子メールデータ)。このようにしても単語が壊れてしまい、データを使って機械学習をしたいので、その中断を取り除きたいと思います。私が見ることができる限り、=\n
はこれらのブレークにのみ使用されるので、それらを削除すると、ブレークなしで同じ情報が得られ、何も失われません。sedを使用して空のファイルの文字列結果を削除する
tr
は1文字のみを置き換えるため使用できませんが、置き換える文字は2文字です。私は無駄にこれまで使用しています
sed
コマンドは次のとおりです。email_aa_edit
はエンロンのメールデータの一部であるsed --in-place --quiet --regexp-extended 's/=\n//g' email_aa_edit
は(それを分割し、分割を使用)、私の入力ファイルです。しかし、これは空のファイルを生成するだけで、私はなぜそれがわかりません。 Afaik
=
はそれ自身の特殊文字ではなく、改行は\n
でなければなりません。
=\n
オカレンスを削除する正しい方法は何ですか?
perl: 'perl -pi -e 's/= \ n //' email_aa_edit' – melpomene
@melpomene興味深いことに、以前はperlを使用しようとして同じ正規表現を使用していたと確信していますが、パラメータが異なっていて動作しませんでした。あなたの仕事は成功しました。 – Zelphir