簡単な質問ですみませんNo.05958
noda さん 08/11/03 04:05
 
 すみません、質問がありまして投稿させていただきました。既出でしたら申し
訳ありませんがご容赦ください。
 たとえば、文章の2行目の行末が<br>のときこの行全部を消すマクロを作りた
いのですが、この場合どのように作成すればよいのでしょうか?IF文を使うの
だとは思うのですが、思うように行きません。
 初歩的な質問ですみませんがもし、ご存知の方がいらっしゃいまたら、お
教え願えませんでしょうか。

[ ]
RE:05958 簡単な質問ですみませんNo.05959
IKKI さん 08/11/03 14:51
 
こんにちは。ユーザの IKKI です。

>  たとえば、文章の2行目の行末が<br>のときこの行全部を消すマクロを作りた
> いのですが、この場合どのように作成すればよいのでしょうか?IF文を使うの
> だとは思うのですが、思うように行きません。

文章全体を対象として、行末が "<br>" である行全体を削除するのなら
マクロを使うまでもなく置換でできます。

検索: ^.*<br>\n
置換: (なし)
正規表現: ON

文章の n 行目だけを対象とするのだと、マクロが必要になりそうです。

[ ]
RE:05958 簡単な質問ですみませんNo.05960
きいろいまふらあ さん 08/11/04 07:48
 
こんにちは。きいろいまふらあと申します。

> たとえば、文章の2行目の行末が<br>のときこの行全部を消すマクロ

一例として以下のようなマクロでできると思います。
行末が<br>かを調べる方法は、

・行全体を文字列変数に格納してrightstr関数を使う
・実際に行末にカーソルを移動して、1文字ずつ文字コードを確認する
・正規表現を使った検索を利用する

などが考えられますが、以下の例ではgettext2関数を使って行末の4文字を取得
して"<br>"と一致するかを確認しています。

//まず文章の2行目(の先頭)に移動
movetolineno 1,2;
//行末の4文字を取得して "<br>" と一致するかチェック
if(gettext2(linelen2-4,lineno,linelen2,lineno,1)=="<br>"){
    selectline; //行全体を選択
    delete;     //(選択範囲を)削除
};
endmacro;

>IF文を使うの
>だとは思うのですが、思うように行きません。

ご自分で試した内容をここにお書きになると、
コメントがつきやすいと思います。

[ ]
RE:05958 ありがとうございますNo.05962
noda さん 08/11/04 12:28
 
 
 IKKI         様
 きいろいまふらあ  様

 nodaです。返信ありがとうございます。先ほど試してみました
ところうまくいきました。わかりやすく丁寧な対応に感謝してお
ります。失礼しました。
 

[ ]