特定の文字から始まる行を削除するマクロNo.26630
みみずく さん 09/05/29 17:40
 
いつも快適に使わせてもらっています。

かなり基本的なマクロだと思うのですが,うまく書けませんので,教えて下さい。

データベースからあるデータをダウンロードして活用したいのですが,不要な行がた
くさん入っており,その行を削除したいのです。
特定の文字(「セッション番号:」とか「整理番号」などです)で始まる行について
は,その後に続く言葉を含めて,行ごと削除してしまいたいのですが,どのようなマ
クロ文を書けばいいのでしょうか。

replaceallなどと正規表現を使うのかと思うのですが,ヘルプを見てもよく分かりま
せん。すみませんが,アドバイスをお願い致します。

[ ]
RE:26630 特定の文字から始まる行を削除すNo.26631
秀丸担当 さん 09/05/29 17:54
 

マクロを使わなくても正規表現を使った置換でできると思います。
例えば、「セッション番号:」という文字列が行頭にある行を全て削除したいと
いう場合、[検索(F)]→[置換(R)...]の置換ダイアログで、以下のように入力し
ます。

 検索文字列「^セッション番号:.*\n」
 置換文字列「」
 正規表現のみON

このように入力,設定して「全置換」をするとできると思います。
正規表現に書き方などは、ヘルプを参照されるといいかもしれません。

マクロで同じことをする場合は、

  replaceallfast "^セッション番号:.*\\n","",regular;

というようにします。
マクロの場合は \ を \\ と書かなくてはいけないので注意が必要です。

[ ]
RE:26631 特定の文字から始まる行を削除すNo.26632
みみずく さん 09/05/29 18:01
 
早々に有り難うございます。

複数の項目行(「セッション番号:」で始まる行も,「整理番号」で始まる行も,
「○○」で始まる行も……という意味です)を一気に削除したいので,マクロで対応
したいと考えています。

参考にして,早速トライしてみます。
困ったらまたご相談いたします。
取り急ぎ,御礼まで。

[ ]