• 締切済み

複数のテキストファイル内の複数行を一括して削除

同一のフォルダにある複数のテキストファイルに対して ************ と ************ で囲まれた部分(複数行)を一括して削除できる方法はありますでしょうか。 ************ と ************ で囲まれた部分は、行数も内容も同じではありません。 例1: ************ 123 abc ************ 例2: ************ あいうえ かきくけ 123 abc ************

noname#31699
noname#31699

みんなの回答

  • yambejp
  • ベストアンサー率51% (3827/7415)
回答No.4

たとえばvbsを使うとするとこんな感じ 以下をtest.vbsなどの名前で保存し、 テキストファイルを複数選んで、ドラッグアンドドロップしてください。 (エラー制御とかいれてないので、バグが満載ですが、 個人用ツールならこんなもんで十分でしょ) 'test.vbs set args= WScript.arguments set fs = CreateObject("Scripting.FileSystemObject") for each i in args set f=fs.getfile(i) f1=fs.getAbsolutePathName(f) f2=f1&".bak" fs.copyFile f1,f2,true set tf=fs.OpenTextFile(i) allLine=tf.readALL tf.close lines=split(allLine,vbcrlf) set tf=fs.CreateTextFile(i) flg=false for j=0 to ubound(lines) -1 if lines(j)="************" then if flg=false then flg=true else flg=false end if elseif flg=false then tf.writeLine(lines(j)) end if next tf.close next

  • notnot
  • ベストアンサー率47% (4848/10262)
回答No.3

sed を使うのなら、windowsだと sed "/^************$/,/^************$/d"

  • qtea
  • ベストアンサー率77% (38/49)
回答No.2

それっぽいツールがないか、どうか… 使えるかどうか、さっぱりわかりませんけど、それっぽいことができそうなツールを探してみました。 http://www.vector.co.jp/soft/win95/util/se359701.html http://www.vector.co.jp/soft/win95/util/se364605.html http://www.vector.co.jp/soft/winnt/util/se403712.html http://www.vector.co.jp/soft/winnt/util/se405657.html もしなければ、素直に、 http://www.vector.co.jp/vpack/filearea/win/util/text/ にないかどうか探してみてください。 目的のことができるツールがない、または、この手のソフトをインストールするのが嫌だというのであれば… ◯手作業 ◯エディタのマクロを利用する ◯WSHを利用する http://www.roy.hi-ho.ne.jp/mutaguchi/wsh/wshtop.htm http://www.atmarkit.co.jp/fwin2k/operation/wsh01/wsh01_01.html ◯なんらかの言語をインストールする のいずれかでしょう。 しょっちゅう、大量のテキストファイルを加工するのであれば、perlあたりが、慣れると楽できます。 Perlだと、英語ですが、ActivePerlが良いのかな… http://penguin.nakayosi.jp/windows/perl.html http://www.activestate.com/ AWKは…さわったことないからわかりませんが、Win版のAWKもありますね(ってあたりまえか) http://www.vector.co.jp/vpack/filearea/win/util/text/awk/ あとは…この際ですから、.NET Framework でC#かVB.NETあたりを使うとか… http://www.microsoft.com/japan/msdn/netframework/downloads/ あ、あと、Rubyという手も… http://www.threeweb.ad.jp/~nyasu/software/rubyonwin.html でも、テキスト処理はやっぱ、Perlが楽ですね。 WSHかPerlかVB.NETを使用するのであれば、相談にのれます(たぶん)。

  • yambejp
  • ベストアンサー率51% (3827/7415)
回答No.1

言語はなにをつかうのでしょうか? 「************」が3つ以上出てこない保証はありますか? 例えば・・・ ************ aaa ************ bbb ************ とかなる場合は、どれをのこしてどれをけずることになるのでしょうか。 ************が前後に文字列がつく可能性はありますか? 例えば・・・ //************ ************xxxxx とか・・・ 改行マークに指定はありますか?

noname#31699
質問者

補足

windows上で動作するものが希望です。 (AWKとかSEDなどは少し知ってます。) 「************」は1つのファイルには、2つ(1組)だけです。 「************」は行の先頭からはじまり行末にはなにもつきません。 改行は「改行コード」(正規表現では「\n」かな)だけです。

関連するQ&A

  • 複数テキストファイルの内容を、一括で重複行の削除がしたい

    複数のテキストファイルの内容で重複する行を、一括削除をするのに便利なツールはありますでしょうか? 色々と探しても一括でしてくれるソフトが見当たりません。 どなたか教えていただければ幸いです。 例)以下のようなテキストファイル内容が複数あって・・ あああ いい かかか ううううう いい ええええ  ↓↓  実行すると・・ あああ いい かかか ううううう ええええ 重複した一方のみ残すというイメージです。

  • 【エクセル】タイトル行のみ一括削除

    添付ファイルにある様なタイトル行が複数行存在する(添付ファイルの売上日、注文ID、注文日時・・・となっている行)場合、一番上(1行目)以外のタイトル行が不要である為、削除していますが現状は、削除する行を選択 or オートフィルタでタイトル行を指定(例:売上日)→選択行を削除 の方法で削除しておりますがデータ行数が多い為どちらの方法でも中々苦労しております。 出来れば一括でタイトル行を消す方法(マクロorVBE)があれば御教授願います。 ※添付ファイルでいうところの黄色のタイトル行及び空欄行を一括で消したいです。タイトル行の数はファイルにより異なります。また、一番上のタイトル行は出来れば残したいです。

  • 複数のテキストファイルを1つにまとめる

    同一フォルダ内にある複数のテキストファイルの内容を1つにまとめる方法を探しております。 例えば、 a.txt, b.txt, c.txt が同一フォルダにあり、 それぞれの内容が AAA BBB CCC である時に、これらをまとめて matome.txtとして、その内容が AAA BBB CCC となるようなプログラムを書きたいのですが、どの様な方法が考えられますでしょうか。 上の例では3つのテキストファイルですが、実際に処理したいファイルは数百個になる為、一つ一つファイル名を入力する作業が大変で困っております。 同一フォルダ内のファイルをファイル名順に一度に読み込み、まとめる方法がありましたらお教え下さい。

  • 複数のフォルダに複数のファイルを一括コピー

    複数のフォルダに対し、同時に複数のファイルを一括コピーしたいのですが、なにかよいソフトなどご存じないでしょうか? 例) C:\ファイルA.txt C:\ファイルB.txt 以上のファイルを D:\テキストフォルダ(1) D:\テキストフォルダ(2) D:\テキストフォルダ(3)   ・    ・ へそれぞれ一括でコピーしたいのです。 Googleやベクターで探したのですが、探し方が悪いのか見つかりませんでした。

  • ファイルの先頭行を全て削除したい

    コマンドプロンプトについてお教え願えまえせんでしょうか? ■同一フォルダ内にあるテキストファイルの1行目のみを全て削除したい。 1000テキストファイルがあります。全てのファイルの先頭行(1行目)を削除したいです。 ■上記のファイルが複数のサブフォルダ内に散らばっているとします。 フォルダAの中にあるサブフォルダを含めた全てのファイルに対し、同じように先頭行を削除したい。 上記の2点をおこないたいと思います。1ファイルづつ先頭行を消していくのは大変な作業なので一発でできればと思っています。 よろしくお願い致します。

  • 色つき行の一括削除は?

    色のついた行を一括削除する方法はありませんか? また列が複数にわたる場合の、空白を一括削除する方法も教えてください!

  • テキストファイル(CSV)の3行目以降を削除バッチ

    数百あるテキストファイル(CSVファイル)に対し、 コマンドプロンプトでバッチ処理をして 3行目以降のデータをすべて削除したいです。 ネット検索しても探しだせず、どなたかお詳しい方、ご教授願います。 初心者なので、コマンドや専門的な用語等わかりませんが、 コピペして使えるような例文があるとありがたいです。 ※対象ファイルは指定のフォルダに集められた状態です ※上書きでも、別フォルダに新規ファイルができてもどちらでも大丈夫です ※それぞれのファイルで3行目以降の行数はことなります。

  • テキストファイル内の特定行の一括変換

    テキストファイルがたくさんあります。 そのすべてのテキストファイルの中の特定の行を一括で変換する方法をご存じありませんでようか。 よろしくお願いします。

  • phpでテキストファイルの1行目に追加する方法

    phpの内容なのですがテキストファイルに変数を1行目に追加する方法ってありますか? 例 テキストファイルの内容 あ い う でこの一番上に変数の内容を足す ええ ⬅︎これを追加したい あ い う

    • ベストアンサー
    • PHP
  • OpenOfficeで複数行の挿入ができません

    OpenOffice4.1.5を使っていたのですが4.1.8があったので更新したら複数行の挿入が出来ませんでした。なのでアンインストールして4.1.5に戻したのですがあいかわらず1行しか挿入できません。 行数入力のテキストボックスが画面に存在しているウインドウにする方法を教えてください。 また、行単位で削除しようとすると"内容を削除"というダイアログがいちいち出てくるようになりました。これも4.1.5のときは出なかったので出さなくする方法がありますか? 以上2点、対処方法をおわかりのかたお願いします。

専門家に質問してみよう