HSPにおける正規表現の利用
1.概要 正規表現(せいきひょうげん、regular expression) とは、文字列の検索・置換 を行なうときに 利用される文字列の集合を一つの文字列で表現する方法の一つであると定義されています。 通常の文字と、 メタキャラクタと呼ばれる特別な意味を持った記号を組み合わせて正規表現パターンとして 記号化して表現 するものです。著名なテキストエディタでは、検索・置換の機能の中で、正規表現が利用できるように なっています。また、 多くのプログラム言語からも利用可能 です。Perl、PHP、JavaScript、 VBScript、Ruby等で 機能が内蔵されています。 しかし、いざプログラム上での利用やテキストエディタから正規表現を利用しょうと思っても、 言語やエディタに 搭載されているエンジンの違いにより、基本的な記号の組み合わせは同じでも言語間での 表記方法や特有の機能 により、素人には記号の組み合わせは難解で覚えられません。 覚えられないと言うより、 むしろ、意図した通りの動作をするパターンを作る事の難しい点が挙げられます。 2.正規表現のパターンサンプル ここでは、複雑なテキストなどの検索や置換を目的とはしておらず、正規表現をHSPからほんの少し便利に 使えたら と考え、正規表現パターンのサンプル集を作成して見ました。パターンの検証は、COM操作関連命令の 利用による VBScript の RegExp を利用することにしました。 尚、正規表現用のdllとしては、BREGEXP.dllやjre32.dllをHSPのAPI呼び出しを利用してモジュール化した ものもネットを検索すると公開されていますが、それらの dllを利用したものには、ここで公開している ターンは正常 に動作致しませんので利用に際しては、注意が必要です。 ¥dや¥sと言った特殊文字(メタキャラクタ)の場合、'¥'を認識させるためには、¥d → ¥¥d や ¥s → ¥¥s と 記述します。また、 ダブルクォートをパターンの中に含めて記述する場合も、前後に ¥ が必要となりますので 注意して下さい。 各種パターンを組み合わせて、いろいろ検証して見ましたが、何故か、行頭の ^ や行末の $ がうまく認識して くれないため、正規表現パターン例も限定された範囲