• 締切済み

複数ファイルから特定の行だけ取り出し、1つのファイルにまとめるには

to_kyoの回答

  • to_kyo
  • ベストアンサー率41% (7/17)
回答No.3

1つのテキストファイルに、「”To”から始まる行」は 必ず、1行しかない。 という前提でしょうか?

関連するQ&A

  • 文字列の抽出がうまくできません

    こんにちは。Perl初心者です。みなさんのお力をお借りしたく、初めて投稿させていただきました。よろしくお願いします。 現在、ファイルから特定した行を抽出し、その行に含まれる文字列を抽出しようとしているのですが、その文字列の抽出がうまくできません。 <文字列を含むファイル:xxx.txt> -------------------------- To 鈴木 太郎さん 1行目 : 01,りんご, 3 個, ナシ, 1個 14行目 02,キャベツ, 3 個, なす, 10本 15行目 : -------------------------- <スクリプトファイル:yyy.pl> -------------------------- open(DAT, "./xxx.txt") || die("can't open file : ($!)"); @file = <DAT>; close DAT; if ( $file[0] =~ /(\W+\s)(\W+)/ ) { print "$1\n"; } print "$file[13]\n"; print "$file[14]\n"; -------------------------- <結果> -------------------------- 鈴木 -------------------------- 抽出したい結果は「鈴木 太郎」なんですが、上記のような結果(「1byteのスペース」鈴木「2byteのスペース」)になってしまいます。xxx.txtの「To」と「鈴木」の間と、「鈴木」と「太郎」の間にはそれぞれ1byteのスペースがあります。どうやったら「鈴木 太郎」と抽出できるか教えてください。 スクリプトは「Copal2(ver2.77)」というツールを使って作りました。そのツールではエンコードは「自動判別」となっており実際何が使われているのか分かりません。 また他にも質問があります。 今抽出したい行を指定して出力させてますが、 「To」から始まる行 「01」といった2桁の数字から始まる行 というような抽出の仕方をしたいのですが可能でしょうか? 本当に初心で大変恐縮ではありますが、教えてください。 よろしくお願いいたします。

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

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

  • vlookup関数で複数の数値を順番に抽出する方法

    注文者IDをキーにして1行毎に未払い金のデータを抽出したいです。 たとえば表が ID 名前 滞納額 01 山田 太郎 10000円 03 鈴木 健二 5000円 01 山田 太郎 50000円 と並んでいるときに、二行目・三行目の金額を合算して出力または、 セルを2つ使って該当者を抽出したいです。 01 山田 太郎 60000円 または 01 山田 太郎 10000円 50000円 どのように関数を使えば、上記のような結果を出力させることが できるかお教えください。  

  • エクセルで重複行を削除

    エクセルで重複行を削除したいのですが、 どうすればいいでしょうか? たとえば名前が1列に並んでいて ××○○ 山田太郎 △田□□ 山田太郎 こんなとき、山田太郎を1行だけに、 まとめたいのですが・・・ データが多いのでソートして 1件1件削除していくのも時間がかかります。 何かいい方法がありましたら よろしくお願いします。

  • 該当リストにない行を削除させる方法

    以下のようなファイル構成で、ワークシート2に記載した該当リストを参照して、該当しない行をワークシート1から削除させるマクロを教えて下さい。 【ワークシート1】 A列 B列 C列 ・・ X列 1組 山田 10 ・・ 10 1組 田中 10 ・・ 15 2組 鈴木 15 ・・ 20 3組 高木 20 ・・ 15 【ワークシート2】 山田 鈴木 ↓↓↓ 実行結果 A列 B列 C列 ・・ X列 1組 山田 10 ・・ 10 2組 鈴木 15 ・・ 20

  • テキストファイルを1行ずつ別のファイルに分割する

    400行ぐらいのテキストファイルを、1行ずつ別のファイルに分割したいと思います。 ファイル名は**001.txtのように、(**は任意の文字列、数字は連番)なってくれれば嬉しいです。 どなたかこのような処理のできる簡単な方法をご存じないでしょうか? よろしくお願いします。

  • テキストファイルに行を追加するソフト

    同一の文字列をn個のファイルに追加したいのですが、指定した行数に任意の文字列を追加するようなソフトありますでしょうか? たとえば、 1 2 3 5 の値が登録されているファイルに対して、4行目に4を追加するように指定すると、 1 2 3 4 5 としてくれるようなソフトを探しています。 情報宜しくお願いします。

  • 複数のファイルを読み込み、1つのファイルとして出力する方法。

    Nakanoです。いつもお世話になっております。 例えばテキストファイルを2つ用意し、1つのテキストファイルとして 出力したいのですが、いまいちやり方が分かりません。出来るのかどうかも 分からないです。(汗) 下にサンプルデータがあります。取り合えず「in1.txt」「in2.txt」 を最終的に『out.txt』の様に仕上げたいのですが… # =in1.txt AAAAA BBBBB CCCCC DDDDD 1,000 2,000 3,000 4,000 1,001 2,002 3,003 4,004 1,010 2,020 3,030 4,040 1,100 2,200 3,300 4,400 =in2.txt EEEEE FFFFF GGGGG HHHHH 5,000 6,000 7,000 8,000 5,005 6,006 7,007 8,008 5,050 6,060 7,070 8,080 5,500 6,600 7,700 8,800 # =out.txt AAAAA BBBBB CCCCC DDDDD EEEEE FFFFF GGGGG HHHHH 1,000 2,000 3,000 4,000 5,000 6,000 7,000 8,000 1,001 2,002 3,003 4,004 5,005 6,006 7,007 8,008 1,010 2,020 3,030 4,040 5,050 6,060 7,070 8,080 1,100 2,200 3,300 4,400 5,500 6,600 7,700 8,800 # ・このデータはタブで区切っています。カンマはない場合もあります。 ・ファイルの中のそれぞれの文字列の数は固定です。行数も固定です。  各文字列の中の文字数はランダムです。  COPYコマンドを利用しても考えてみたのですが、後ろに続いちゃって  上手くいかなかったです。(笑)  Perlだと1つ目のファイルの1行目を配列に入れて、次に2つ目の  ファイルの1行目を配列に入れて、これを一旦出力して、同じ手順の  様な事を行を2行目、3行目、4行目、、とずらして繰り返す。って  感じでイメージしているのですが、どの様にソースを組めばいいのか  分かりませんでした。  どなたかご教授いただけないでしょうか? 宜しくお願い致します。

  • 条件を抽出し、フラグを立てる関数

    下記条件の場合、D列に「○」フラグを立てたいです。 D列に入力する関数を教えてください。 どうぞよろしくお願い致します。 ・ B列が同じ名前の行を抽出。 ・ 抽出した行のC列に「鉛筆」「消しゴム」「ペン」が入力されている場合、   D列に「○」をつけたい。 ・ ただし、B列が同じでも、C列に「鉛筆」「消しゴム」「ペン」以外が入っていた 場合、D列には何も入れない。 ※B列には飛び飛びに同じ名前が入力されている場合もあります。 ※行は1000行ほどあります。 【前】      B列    C列 山田太郎  鉛筆 山田太郎  ペン 伊藤二郎  缶 伊藤二郎  鉛筆 鈴木五郎  ペン 鈴木五郎  消しゴム 木村三郎  消しゴム 木村三郎  鉛筆 山田太郎  消しゴム 鈴木五郎  パソコン 【後】   B列    C列    D列 山田太郎  鉛筆    ○ 山田太郎  ペン    ○ 伊藤二郎  缶 伊藤二郎  鉛筆 鈴木五郎  ペン 鈴木五郎  消しゴム 木村三郎  消しゴム  ○ 木村三郎  鉛筆    ○ 山田太郎  消しゴム  ○ 鈴木五郎  パソコン わかりにくくて申し訳ありませんが、よろしくお願いいたします。

  • エクセルVBAで特定の文字を含まない行を削除する

    エクセルVBAで特定の文字列(たとえば” りんご ”)を含まない行を削除するものを作成したいです。 ” りんご ”がB列だけにしかない場合は作成できたのですが、 ” りんご ”がB列とC列にも含まれていて どちらかに含まれていたら、その行を残して、それ以外の行を削除したい場合にはどうしたらいいのかわかりませんでした。 教えてください。