複数のテキストファイル(*.txt)の行頭または行末に、指定した複数行の文字列を一括で挿入したいです。ファイル名ではなくファイルの中身です。置換ソフトでは、置換対象の文字が必要なのでできません。

そのような作業を可能にするツールはありますか?どこかで秀丸エディタでできるようなことを見つけたのですが、できれば無料のツールを希望します。

回答の条件
  • 1人2回まで
  • 登録:2008/04/20 14:06:29
  • 終了:2008/04/20 16:58:34

ベストアンサー

id:ransamu No.3

ransamu回答回数138ベストアンサー獲得回数72008/04/20 16:34:48

ポイント54pt

Devas

http://www.vector.co.jp/soft/win95/util/se162621.html

この置換ソフトは正規表現に対応していますので、検索モードを「正規表現検索」にして、検索文字列を、ファイルの先頭なら「¥A」 、ファイルの末尾「¥z」、にして置換すればご希望の動作をするかと思います。

id:driver4649

ありがとうございます!

できました!

正規表現を詳しく知らないのですが、正規表現対応の置換ツールであれば可能のようですね

2008/04/20 16:58:04

その他の回答(2件)

id:pahoo No.1

pahoo回答回数5960ベストアンサー獲得回数6332008/04/20 14:50:53

ポイント27pt

単純にテキスト結合してはどうでしょうか。

PerlやPHPを使えば、複数ファイルに対する処理も簡単に制御できます。


プログラムを書くのが面倒でしたら、少し手間がかかりますが、バッチ処理を使ってできます。

たとえば Windows であれば、copy コマンドを使い、下記のようなバッチを書きます。この場合は複数のテキストファイル(1.txt, 2.txt, 3.txt)の冒頭にhead.txtを、末尾にtail.txtを追加し、各々、hoge1.txt, hoge2.txt, hoge3.txtとして出力します。

copy head.txt+1.txt+tail.txt hoge1.txt
copy head.txt+2.txt+tail.txt hoge2.txt
copy head.txt+3.txt+tail.txt hoge3.txt
...

Linuxでは cat コマンドが同様の働きをします。

id:driver4649

すいません、何となく意味はわかるのですが

プログラムの知識がないので無理そうです

参考にさせて頂きます

2008/04/20 14:55:41
id:kuzan No.2

空山回答回数7ベストアンサー獲得回数12008/04/20 15:01:38

ポイント27pt

いわゆるテキスト処理系のツールを使うのがよろしかろうと思います。

私が使い慣れているsedでは、

一行目への挿入であれば

1s/^/(入れたい文字列)\n/

   一行目の行頭に「(入れたい文字列)+改行」を入れる。


最終行への挿入であれば

$s/$/\n(入れたい文字列)/

   最終行の行末に「改行+(入れたい文字列)」を入れる。


sedの場合は、複数のファイルを一度に、というのは、別のソフトと組み合わせる必要がありますが、perlなどだったら、単体で出来ます。


敷居が高い、とお感じになるのであれば、多分、置換ソフトでも、行指定が出来るものがあるだろうと思います。


要は、

 一行目の行頭(という見えない文字)を「(入れたい文字列)+改行」に置換する。

 最終行の行末(という見えない文字)を「改行+(入れたい文字列)」に置換する。

ということです。

id:driver4649

http://www.linux.or.jp/JM/html/GNU_sed/man1/sed.1.html

こちらでしょうか。これは何かのソフトでしょうか

perlはcgiの設置とちょっとした改造の知識しかなく

おそらく的確な回答ではあると思うのですが

やはり恥ずかしながら、回答の意味がわかりません

自分のスキル知識の浅さに悔やまれます

2008/04/20 15:19:16
id:ransamu No.3

ransamu回答回数138ベストアンサー獲得回数72008/04/20 16:34:48ここでベストアンサー

ポイント54pt

Devas

http://www.vector.co.jp/soft/win95/util/se162621.html

この置換ソフトは正規表現に対応していますので、検索モードを「正規表現検索」にして、検索文字列を、ファイルの先頭なら「¥A」 、ファイルの末尾「¥z」、にして置換すればご希望の動作をするかと思います。

id:driver4649

ありがとうございます!

できました!

正規表現を詳しく知らないのですが、正規表現対応の置換ツールであれば可能のようですね

2008/04/20 16:58:04

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません