• ベストアンサー

テキストで特定の文字列を含む行を削除

テキストエディタで特定文字列を含む行と空白の行を削除したいです。 このようなことができるフリーのソフトがあったら教えてください。 テキストデータは数メガになりますのでメモ帳のような簡単なエディタでは開けません。 また、エクセルでも最大行を超えるため読み込めません。

質問者が選んだベストアンサー

  • ベストアンサー
  • kztk
  • ベストアンサー率53% (59/110)
回答No.2

エディタでよいのですよね?正規表現による置換ができるエディタならたいていOKなのではないでしょうか。 私が使っているのはPeggyPadというフリーのエディタですが、ためしに10MBほどのテキストファイルを作ってみたところ問題なく置換できました。1行が65000字を超えるようなものはまずいみたいですが。 参考までにPeggyへのリンクを張っておきますね。 ちなみに ■空白行の削除 "^$"→""へ置換 ■特定の文字列を含む行の置換 "^.*特定の文字列.*\n"→""へ置換 でいけると思います。

参考URL:
http://www.anchorsystems.co.jp/anchor/ashp/peggy/pegindex.html
123isao
質問者

お礼

回答ありがとうございます。 正規表現というものを初めて知りました。 秀丸エディタを使っているのでできそうです。

その他の回答 (2)

  • kztk
  • ベストアンサー率53% (59/110)
回答No.3

おっと失礼しました。 "^$"じゃなくて"^\n"でした。 正規表現はお分かりですか? ならば特に補足することもありませんが・・・。

noname#23953
noname#23953
回答No.1

エディタではないですが、テキストファイルを一括して処理する「ChrTrim」というソフトがあります。 フリーソフトです。

参考URL:
http://www2.snowman.ne.jp/~kaeru/soft/ctrim.htm
123isao
質問者

補足

ソフトを見てみましたが、複数文字列を含む行の削除はできなさそうです。

関連するQ&A

  • 正規表現で特定文字列を含まない行を削除したいのですが

    テキストエディタ mi で正規表現のより「※補足」という文字列を含む行だけ残して他の行を削除しようとしています。 具体的には、 検索文字列 ^(?!.*\※補足).*$ 置換文字列            ← 空白 としてやっているんですが、例えば   なんとかかんとかで何やらが何として…   ※補足:よくわかりません   ※補足:質問します というテキストを上の方法で全置換すると何も起きません。 そこで試しに 検索文字列 ^(?!.*\※補足).*$ 置換文字列 ----- としてみました。 この場合、本当なら   -----   ※補足:よくわかりません   -----   ※補足:質問します となることを期待していたのですが、実際は   -----なんとかかんとかで何やらが何として…   ※補足:よくわかりません   -----   ※補足:質問します となってしまい、要するに「※補足」という文字列が含まれない行は正しく見つけてくれるものの、含まれていない行については、その行丸ごとを置き換えるのではなく行頭に置換文字列を付加するだけになってしまいます。 これは、何がどう悪いのでしょうか? ちなみに、こちらのサイトで「テキストで特定の文字列を含む行を削除」とQ&Aを検索すると、私の場合で言えば「^.*※補足.*\n」→「」(空白)という置換えで可能というご回答が見つかるのですが、miの場合、これでは「※補足」という文字列が含まている行も含まれていない行も見つけてくれませんでした。 どう直せば目的が達成されるか教えて頂けないでしょうか? どうかよろしくお願い致します。

    • ベストアンサー
    • Mac
  • 色々、文字処理ができるテキストエディタ。

     細かな文字処理ができるテキストエディタを探しています。 フリーソフトに詳しいご主人様、お願いします♪ 基本、oeditを使っています。 普通使うテキストエディタ以外で、文字処理に特化したソフトがあったら嬉しいのです。 欲しい機能は、 特定のキーワードの行、以外を削除する機能や 行の先頭で半角空白や文字を入れる。 今は、エクセルで全部の行をソートして、特定の行を探し当てて、手動で先頭に一文字入れて、置換しています。 これが、面倒です。 もし使っているご主人様がいたら、教えてくださいね♪

  • 特定文字列を含まない行を削除

    以前特定文字列を含む行を削除する方法の質問をし、正規表現を置換することでできることを知りました。^.*特定の文字列.*\n 今度は特定文字列を含まない行を削除を削除したいです。 この場合どう記述すればいいでしょうか? また、特定文字列1と特定文字列2のどちらかを含まない行を削除する方法もあわせて知りたいです。

  • エクセルで特定の文字が含まれる行から特定の文字が含まれる行の削除方法

    エクセルで特定の文字が含まれる行から特定の文字が含まれる行の削除方法 表題のとおりですが、エクセルで特定の文字が含まれる行から特定の文字が含まれる行の削除方法について教えてください。 特定の文字(C列にあります)が含まれている行から5行下の先ほどとは違う文字(これもC列にあります)までを削除したいのです。 それがたくさんあり大変困っております。 エクセルを起動してマクロの記録を行い手作業で5回削除し記録終了としたのですが、 5回以上削除したい場合は操作が行われませんでした。 これをマクロで行うにはどういう式を作ればいいでしょうか? 宜しくお願いします。

  • txtファイルから特定の文字列が書かれた行だけを取得や削除するソフト

    txtファイルで 特定の文字列が書かれた行だけを 取得や削除するソフトや方法を探しています。 フリーで無いなら、シェアウェアなどになってもかまいません 例えば (12)と書かれた文字列がある行だけを抜きだしたり 逆に(12)と書かれた文字列がある行だけを削除したり したいです。 そのソフトの操作方法も教えてくださると助かります。 では、回答を心よりお待ちしております。

  • テキスト中の特定の文字を含む行を丸ごと削除する機能

    テキスト中で、ある特定の文字を含んでいる行を、丸ごと一括で削除できるソフトはありませんか? 例えば、 あ□いいいうううええお ああ○いいううええおお ○あああいいいううええ あいい△ううううええお というテキストで、○を含む行だけを丸ごと削除すると言うことです。 よろしくお願いします。 市販のソフトではWordがあります。

  • 特定の文字列を含む行だけ削除する方法?

    いつもお世話になっています。 Unixであるテキストファイルから、 特定の文字列を含む行(レコード)だけを 削除する方法を教えてください。 現在、grepを使って、いろいろ試しているのですが、 正規表現で、 ”***”を含まない行(レコード)だけを 切り出すとう正規表現の説明が見あたりません。 "^**"は、**以外の文字を検索できるようですが、 文字列に対しては、使えません。 grep以外の方法でも良いのですが、 なるべくシンプルにできる方法がありましたら 教えてください。 宜敷お願いします。

  • エクセルマクロ 特定の文字列を含む行を削除

    エクセルマクロ 特定の文字列を含む行を削除 エクセルのマクロについて教えてください。 下の中から列を限定せず、すべての行でAAA、CCCのいずれかがある場合、 その行ごと、すべて削除したいのです。 時に削除したい特定の文字列が数十種類になるため、 マクロ起動時に削除したい特定の文字を記述したファイルを読み込み、それから 削除できるようにしたいのです。場合によってはそのファイルを編集し、 削除したい文字列を変更したいのです。 ご教示いただだけないでしょうか A列 B列 C列 1 AAA BBB CCC 2 BBB CCC FFF 3 DDD BBB FFF 4 AAA CCC DDD 5 GGG RRR UUU 行中にAAA、BBBがある場合、削除したい ↓ A列 B列 C列 5 GGG RRR UUU マクロを実行し、上記の結果にしたい。

  • エクセルで特定の行を削除したい

    こんにちは。 エクセルである列に特定の文字列がある場合にその行ごと削除するにはどうすれば良いでしょうか。 よろしくお願いします。

  • 特定の文字などを一括削除したい

     タイトルの通りなのですが、特定の文字などを一気に削除してしまう方法はあるでしょうか?  具体的には、例えばメモ帳などに (1)タイトル ここに文章 (2)タイトル ここに文章 (3)タイトル ここに文章  というような感じの構成の文章があるとします。この中で、(1)、(2)などと表示されている行を全て一括で削除したいのです。A,Bでも箇条書き風に○など何でもいいのですが、特定文字列が含まれている行を全て一括で削除したいのです。上記の場合だとタイトルと書かれてある行を全て削除したいのです。手動で削除するのもいいですが、相当数ある場合かなり大変です。特定文字が含まれている行を一括で削除するなどのフリーソフトはないでしょうか?。また、何か方法があるでしょうか?。回答宜しくお願いします。