【ハウツー】
今度は条件付けを用いた置換を行なってみましょう。正規表現の検索文字列を「^1」に変更すると、行頭の先頭文字が「1」となっている文字列のみにマッチするため、2行目の行頭には「・」が追加されていないのが確認できます。「1章」「1節」など異なる見出しがある場合にご活用ください。このとき注意しなければならないのが、置換文字が「・」だけではなく「1」も置換対象となってしまう点。かならず置換文字列も「・01」などマッチさせる文字列を加えてください。
正規表現
検索:^1
置換:・01
1 中原 中也
2 夏目 漱石
3 南部 修太郎
・01 中原 中也
2 夏目 漱石
3 南部 修太郎
最後にタグ付き正規表現を用いてみましょう。前述のように正規表現はアプリケーションなどによって独自拡張されており、マッチした文字列を一度メモリ内に取り込み、置換文字列などに用いることが可能です。PerlやPHPでは一般的に使われている正規表現機能ですが、秀丸ではタグ付き正規表現として実装されました。
多くのプログラミング言語では「() (パーレン)」で囲んだ文字列が対象となりますが、秀丸では独自にエスケープシーケンスを拡張し、「\f」で囲んだ文字列が対象となります。下記の例では「行頭から改行を除く任意の1文字、『.』と文字列が続く行」にマッチし、「『第』に続いて『\f』で囲んだ文字列、その後に全角スペース」へと置換されました。
正規表現
検索:^\f.\f\.
置換:第\1□
※「□」は全角スペース
1.中原 中也
2.夏目 漱石
3.南部 修太郎
第1 中原 中也
第2 夏目 漱石
第3 南部 修太郎
今回はキャレットの話に従事する予定でしたが、任意の文字にマッチするメタ文字「.(ピリオド)」まで広がってしまいました。任意の文字列にマッチするメタ文字に関する説明は、また機会を改めてご紹介します。
阿久津良和(Cactus)
| 【レポート】マカフィーの世界の専門家の意識調査「サイバー防衛報告書」とセキュリティソリューション [21:15 5/25] |
| アップル、Aperture 3.2.4を公開 - バグ修正、安定性向上など [20:51 5/25] |
| 【レポート】GTC 2012 - VGXでエンタープライズ環境でのGPU需要開拓を狙うNVIDIA [20:07 5/25] |
| デル、期間限定キャンペーンに特価アイテム追加、アップグレード無料も継続 [19:41 5/25] |
| 上海問屋、iPhoneとほぼ同じ薄さのバッテリ内蔵ヘッドホンアンプ [19:05 5/25] |
|
エヴァンゲリオンレーシング、今年も鈴鹿8耐出場! 1,000人分の応援席も [00:30 5/27] ライフ |
|
「ガンスリ」10周年で大王付録にヘンリエッタフィギュア [22:22 5/26] ホビー |
|
【特集】クライマックス突入記念! 『Fate/Zero』の舞台裏に迫る!! [22:00 5/26] ホビー |
|
竹宮ゆゆこ×カスカベアキラ「エバーグリーン」1巻刊行 [21:59 5/26] ホビー |
|
最もセクシーな男性「メン・オン・ファイア」21人をAARP誌が発表 [21:30 5/26] エンタメ |