** 内容はSRC2.2.33のものです **
正規表現関数
正規表現は柔軟なパターンマッチングを行うための手法としてUnix等のOSや、Perl等のプログラミング言語で幅広く使われている機能です。パターン中にメタ文字と呼ばれる特殊な機能を持つ文字を指定することで複雑なパターンマッチングを行うことが出来ます。
基本的なメタ文字
.任意の一文字にマッチする
*直前のパターンの0回以上の繰り返しにマッチする
+直前のパターンの1回以上の繰り返しにマッチする
?直前のパターンが0回もしくは1回現れる
^文字列の先頭にマッチする
$文字列の末尾にマッチする
**直後のメタ文字をクォートするエスケープ文字
** | **パターンの論理和を作成する |
()パターンのグループ化を行う
[]文字クラスを指定する
例
BMPファイル名にマッチする正規表現 .+mid
郵便番号にマッチする正規表現 [0-9][0-9][0-9]-[0-9][0-9][0-9][0-9]
この他にも正規表現には多彩な機能が盛り込まれており、その全てを解説すると本が一冊書出来てしまう程ですので、ここでは省略させて頂きます。
SRCでの正規表現はMicrosoftのWindows Scriptの機能を利用して実装されています。正規表現について詳しく知りたい方は。
MSDNのWindows Scriptのページ(http://www.microsoft.com/japan/msdn/scripting/)をご覧下さい。正規表現についての解説はJScriptドキュメントのページにあります。
なお、Windows Scriptの機能を利用している関係上、Windows Script Ver.4.0 以上がインストールされていないPCではSRCから正規表現の機能を使うことが出来ません。ただし、Interne Explorer 5.0以上がインストールされていれば自動的にWindows Script Ver.4.0 以上がインストールされるため、通常は問題にならないと思います。
SRCで正規表現を扱う関数は以下の2つです。
**RegExp(文字列,パターン[,大小区別あり | 大小区別なし]) or RegExp()** |
指定した正規表現を使って文字列を検索します。
「大小区別あり」「大小区別なし」は英字の大小を区別するかどうかを指定します。(デフォルトは「大小区別あり」)
引数に何も指定しなかった場合、パターンに合致した次の文字列を返します。
例 RegExp(“あいあうあえあお”,”あ.”)は「あい」を返す。
続けてRegExp()と指定した場合、次にパターンに合致する「あう」を返す。
**RegExpReplace(文字列,検索パターン,置換パターン[,大小区別あり | 大小区別なし])** |
文字列の中から正規表現パターンに当てはまる文字列を検索し、置換パターンで置換した文字列を返します。
「大小区別あり」「大小区別なし」は英字の大小を区別するかどうかを指定します。(デフォルトは「大小区別あり」)
例 RegExpReplace(“あいあうあえあお”, “うあ”, “ウア”)は「あいあウアえあお」を返す。