複数の範囲指定No.27194
cent さん 09/10/19 05:40
 
お世話になります。

<html>
<body>
<title>sample</title>
<h1>残したい</h1>
</body>
</html>

上記テキストに下記マクロを実行すると
消えてしまいます。

setcompatiblemode 0x0F;
searchup "<html>" , regular, nocasesense, hilight;
if( ! result )  beep;
beginsel;
searchdown "<h1>" , regular, nocasesense, hilight;
if( ! result )  beep;
delete;
replaceallfast "<h1>", "" ,regular ;

setcompatiblemode 0x0F;
searchup "</h1>" , regular, nocasesense, hilight;
if( ! result )  beep;
beginsel;
searchdown "</html>" , regular, nocasesense, hilight;
if( ! result )  beep;
delete;
replaceallfast "</html>", "" ,regular ;

残したい
を残すには何を追加すればよろしいでしょうか?

よろしくお願いいたします。


[ ]
RE:27194 複数の範囲指定No.27198
Iranoan さん 09/10/19 13:21
 
 cent さん今日は、Iranoan です。
 念の為お断りしておくと、開発者とは何の関わりも無い単なる一ユーザです。
> 上記テキストに下記マクロを実行すると
> 消えてしまいます。
<snip>
> 残したい
> を残すには何を追加すればよろしいでしょうか?
 これは、
> replaceallfast "<h1>", "" ,regular ;
の終了時点のカーソル位置を考慮する必要があります。
> setcompatiblemode 0x0F;
は一度やればすむので、2 度目のこれを
gofileend;
に置き換えればよいと思います。

[ ]
RE:27194 複数の範囲指定No.27199
秀丸担当 さん 09/10/19 13:42
 

  searchup "</h1>" , regular, nocasesense, hilight;

の行を削除して、代わりに

  searchdown "</h1>" , regular, nocasesense, hilight;

としておくといいのではないかと思います。

もしキー操作の記録で複数の範囲を削除するマクロを作るとしたらですが、

1.検索
2.範囲選択
3.削除
4.検索
5.範囲選択
6.削除

というように1回の記録でまとめて記録してしまうといいかもしれません。

[ ]
RE:27198 複数の範囲指定No.27200
cent さん 09/10/19 14:30
 
> cent さん今日は、Iranoan です。

ご親切感謝します。
ありがとうございました。



[ ]