- ベストアンサー
テキストの重複する行をすべて削除する方法
テキストの重複した行をすべて削除する方法を探しています 例 あああ あああ いいい ううう ↓削除後 いいい ううう ソフトを使用する場合はフリーの物でお願いします。 使用しているPCはwin7の32bitです。 既に持っているフリーウェアはBigEditとoeditです。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
もっとも早いのはSED( http://ja.wikipedia.org/wiki/Sed_%28%E3%82%B3%E3%83%B3%E3%83%94%E3%83%A5%E3%83%BC%E3%82%BF%29 )ですが・・・(^^)。 コマンドラインやバッチファイルの作成や扱いに慣れてないとハードルが高いかな? $b N /^\(.*\)\n\1$/ ! { P D } :c $d s/.*\n// N /^\(.*\)\n\1$/ { bc } D ★sed, a stream editor: いくつかの見本スクリプト ( http://www.bookshelf.jp/texi/sed/sed-ja_4.html#SEC29 ) UNIXならもっているuniqコマンドと同じ動作をする数千行あっても一瞬で終わる。 CYGWINをもっている場合は sort abc.txt | uniq > efg.txt テキストを扱いやすいものとしては、PerlとかAWKとか、Rubyでも・・・ Perlだと、行の内容をキーとするハッシュ(連想配列)を使って、その値が0な物だけ抜き出せばよい。 Perlもです。テキスト扱うならもっておくべきプログラム言語です。 http://ja.wikipedia.org/wiki/Perl
その他の回答 (1)
- ORUKA1951
- ベストアンサー率45% (5062/11036)
SEDはWindows版もあります。 Vector:ダウンロード Windows > ユーティリティ > テキストファイル用 > sed ( http://www.vector.co.jp/vpack/filearea/win/util/text/sed/ ) 使い方は、先の回答のリンク先をご覧ください。
補足
再びご回答ありがとうございます。 winでも動かせるのですね、調べ方が浅くてすみません。 SEDはフリーで表示されておりますが、 なぜか今現在は「お支払い後にダウンロード」という 画像が表示されるだけで、残念ながらDLする事ができませんでした。
補足
年に1~2回、1万文字程度の遊び用に作ったテキストファイルを整理したくて質問しました。 当方はPCのプログラミング?に関しては初心者です。 重複してる行を片方削除する機能がBigeditに標準で付いていたので、 両方の削除も簡単に行えるソフトがありそうだなーと思い質問した次第です。 コマンドプロンプトならwebと格闘しながら操作したこともあります(操作方法を丸写しするレベルで) コマンドプロンプトで処理できるなら是非やり方を知りたいです。 UNIXは何だか難しそうですが便利そうですね、でも所持してるのはWIN7のみです。