正規表現関数

正規表現を使い,文字列のマッチング,切り出し,置換などが可能になります. 正規表現について,本ドキュメントでは触れません.

ここで解説する正規表現関数の実際の処理は BREGEXP.DLL の機能を使用して実現しています.

BREGMatch
BREGSplit
BREGSubst
BREGTrans

int BREGMatch(
  string pattern,
  string target )
[3.00以降]

機能文字列targetの中に,正規表現patternにマッチする部分文字列がいくつあるかを調べ,その個数を返します.
引数
pattern正規表現で書いたマッチングルール
targetマッチング処理の対象文字列
戻り値
patternにマッチした部分文字列の数
このカテゴリのトップ| カテゴリ別関数一覧| 関数名一覧

int BREGSplit(
  string pattern,
  string target,
  string dest[] )
[3.00以降]

機能指定された区切り文字列で文字列を分割し,分割した文字列を可変長配列にセットします.
引数
pattern区切り文字列の正規表現
target処理対象文字列
dest[]分割後の文字列を格納する可変長配列
戻り値
分割後の文字列の数
説明 文字列targetを,patternに指定された正規表現にマッチする部分文字列で分割します.
分割されたそれぞれの部分文字列をdest配列にセットします.
関数はdest配列にセットした部分文字列の数を返します.
例1
string dst[];
int i;
int max = BREGSplit( "/-/", "03-2345-xxxx", dst );
//出力は...
//03(改行)
//2345(改行)
//xxxx(改行)
for( i = 0 ; i < max; i++ )
    Talk( dst[i] + "\n" );
      
このカテゴリのトップ| カテゴリ別関数一覧| 関数名一覧

string BREGSubst(
  string pattern,
  string target )
[3.00以降]

機能正規表現パターンにマッチする部分文字列を,他の文字列で置き換え,その結果を返します.
引数
pattern置換規則
target処理対象文字列
戻り値
変換後の文字列
例1
//出力は'X-X-Xxx'
Talk( BREGSubst( "s/[0-9]+/X/g", "0120-443-09xx" ) );
      
このカテゴリのトップ| カテゴリ別関数一覧| 関数名一覧

string BREGTrans(
  string pattern,
  string target )
[3.00以降]

機能文字の置換を行ないます.
引数
pattern置換規則
target処理対象文字列
戻り値
変換後の文字列
説明 置換前の文字と置換後の文字の対応をpatternで指定し,それにしたがってtargetを処理します.
BREGSubstと異なり,1文字単位で置換します.
例1
//出力は'abca-eed-ajxx'
Talk( BREGTrans( "tr/0-9/a-j/", "0120-443-09xx" ) );
      
このカテゴリのトップ| カテゴリ別関数一覧| 関数名一覧