空白行をその上にある行に置き換える方法No.17404
tung_ye さん 04/06/18 15:04
 
皆さんこんにちは。tung_yeと申します。
下のような形で1000行近くに及ぶデータの、「ああああ」の下の空白行を「あああ
あ」に、「いいいい」の下の空白行を「いいいい」に一括して置き換えたいのですが、
良い方法はありませんでしょうか?
-----
ああああ
(空白行)
(空白行)
いいいい
(空白行)
(空白行)
(空白行)
  ・
  ・
------
自分でマクロを組んで処理できないものかとhelpや『秀丸エディタハンドブック』な
どでマクロの勉強を試みたのですが、プログラムを組んだ事のない私にとって何とか
ついて行けるのは今のところ検索・置換の正規表現までで、マクロに至ってはコマン
ドや変数などをどのように繋いでいけばよいのか分からずお手上げの状態です。
ご教授よろしくお願い致します。

[ ]
RE:17404 空白行をその上にある行に置き換No.17405
秀まるお2 さん 04/06/18 17:29
 
 僕が今やってみて行けそうに思ったマクロは以下の通りです。

Loop:
    replacedown "^\\f.+\\f\\n\\n", "\\1\\n\\1\\n", regular, casesense;
    if( !result ) endmacro;
    up;
    goto Loop;

[ ]
RE:17404 空白行をその上にある行に置き換No.17406
かとちん さん 04/06/18 17:44
 
tung_ye さん、こんにちわ。

ああああ と いいいい だけですか?
他にも条件があるのではないですか?

この2つだけであれば、

正規表現置換で、

ああああ\n\n
 ↓
ああああ

にすればよいと思います。いいいいについても同じ。

けど、正規表現による置換はできるとおっしゃっているわけですから
これは外していると思います。

具体的な置換条件とはどのようになりますでしょうか?

ユーザに入力させてということなのか、置換対象文字列テーブルの
ような情報を別途参照する必要があるのでしょうか?

-------

今、気付いたんですが、ここのMLではfromアドレスを加工してくれるんですね!!
すご〜〜い。スパムされる心配がないなんて素晴らしいです(全然議題と関係ないで
すが)


> 皆さんこんにちは。tung_yeと申します。
> 下のような形で1000行近くに及ぶデータの、「ああああ」の下の空白行を「あああ
> あ」に、「いいいい」の下の空白行を「いいいい」に一括して置き換えたいのです
>が、
> 良い方法はありませんでしょうか?
> -----
> ああああ
> (空白行)
> (空白行)
> いいいい
> (空白行)
> (空白行)
> (空白行)
>   ・
>   ・
> ------
> 自分でマクロを組んで処理できないものかとhelpや『秀丸エディタハンドブック』な
> どでマクロの勉強を試みたのですが、プログラムを組んだ事のない私にとって何とか
> ついて行けるのは今のところ検索・置換の正規表現までで、マクロに至ってはコマン
> ドや変数などをどのように繋いでいけばよいのか分からずお手上げの状態です。
> ご教授よろしくお願い致します。



_/_/_/ BATTLE-TRIED PROGRAMMER katochin
_/_/_/ http://homepage2.nifty.com/t-katochin/

[ ]
RE:17405 空白行をその上にある行に置き換No.17408
tung_ye さん 04/06/18 18:32
 
tung_yeです。
秀まるお2様、有り難うございます。
今800行ほどのデータで試してみました。
うまく行きました。
コマンドを一つ一つ秀丸本の解説と照らし合わせ、どのような事をどのような手順で
行っているのか確かめて、今後の参考にさせて頂きます。
少しでもマクロに慣れて簡単なマクロぐらいは自分で組めるようになりたいと思って
います。
大変助かりました。
有り難うございました。

[ ]
RE:17406 空白行をその上にある行に置き換No.17409
tung_ye さん 04/06/18 18:43
 
かとちんさん。tung_yeです。
有り難うございます。
秀まるお2さんの書いて頂いたマクロですんなりと出来てしまいました。

「ああああ」「いいいい」だけのデータではなく、1000行ほど(場合によっては1万
行以上)のなかにこのような形で100人ほどの人名(またはIDコード)が入ってい
るデータだったんです。

ことば足らずですみませんでしたm(_ _)m

[ ]