|
こんばんは。ユーザーの IKKI と申します。
>一定間隔で行を抜き出したいのですが、grepの正規表現で対応できますでしょうか?
grepで行番号を検索条件とすることはできません。
> 例えば100行目毎に次のような行からなるファイルを出力するというイメージです。
これだけでしたら次のマクロでできますが、いかがでしょう。
$output_filename = "100th.txt";
disabledraw;
##fso = createobject("Scripting.FileSystemObject");
##f = callmethod_returnobj(##fso, "OpenTextFile", $output_filename, 2, 1, -
1); // Unicode
// ##f = callmethod_returnobj(##fso, "OpenTextFile", $output_filename, 2,
1); // ASCII
gofiletop;
while (lineno < linecount2) {
if (lineno % 100 == 1) {
callmethod ##f, "Write", gettext2(0, lineno, 0, lineno + 1);
}
moveto2 0, lineno + 1;
}
callmethod ##f, "Close";
releaseobject ##fso;
enabledraw;
もしどうしても秀丸の grep 機能を使いたいということでしたら、
1. 全行の行頭に行番号を追加しておく
2. 「^\d*01\y」で grep
3. 行頭の数字を削除
みたいな手順になるかと思います。
秀丸エディタ v8.73β11
|
|