本ページには広告が含まれています。
正規表現と指定された文字列のマッチングを行いマッチした場合はTrue、マッチしなかった場合はFalseを返します。
- 構文
- Boolean = reTest( str, Pattern, IgnoreCase, Global )
- 引数
- str (String)必須
- 正規表現による検索の対象となる文字列
- Pattern (String)必須
- 正規表現で使用するパターンを設定
- IgnoreCase (Boolean = True)省略可
- 大文字・小文字を区別しない場合はTrue、区別する場合はFalse
- Global (Boolean = True)省略可
- 文字列全体を検索する場合はTrue、しない場合はFalse
- 戻り値
- 正規表現にマッチするかどうかを示すブール値
プログラム
//////////////////////////////////////////////////
// 【引数】
// str : 正規表現による検索の対象となる文字列
// Pattern : 正規表現で使用するパターンを設定
// IgnoreCase : 大文字・小文字を区別しない場合はTrue、区別する場合はFalse
// Global : 文字列全体を検索する場合はTrue、しない場合はFalse
// 【戻り値】
// 正規表現にマッチするかどうかを示すブール値
//////////////////////////////////////////////////
FUNCTION reTest(str, Pattern, IgnoreCase = TRUE, Global = TRUE)
DIM re = CREATEOLEOBJ("VBScript.RegExp")
re.Pattern = Pattern
re.IgnoreCase = IgnoreCase
re.Global = Global
RESULT = re.Test(str)
FEND
入力値のチェック
reTest関数は、INPUT関数で入力された値のチェックに使うことができます。
正規表現にマッチするかしないかで処理を分けることができます。
IFB reTest(INPUT("数値を入力"), "\d+") THEN
PRINT "数値です。"
ELSE
PRINT "数値ではありません。"
ENDIF
数値が入力されるまでインプットボックスを繰り返し表示します。正規表現にマッチする文字列を入力しない限り次の処理に進まないので注意。
REPEAT
SLEEP(0.100)
UNTIL reTest(INPUT("数値を入力"), "\d+")
プログラム実行例
数値から月の異名を求める
DIM month[12] = "睦月", "如月", "弥生", "卯月", "皐月", "水無月", "文月", "葉月", "長月", "神無月", "霜月", "師走"
DIM str = INPUT("1〜12の数値を入力してください。")
IFB reTest(str, "[1-9]|1[0-2]") THEN
PRINT month[str- 1]
ELSE
PRINT "1〜12の数値を入力してください。"
ENDIF
//////////////////////////////////////////////////
// 【引数】
// str : 正規表現による検索の対象となる文字列
// Pattern : 正規表現で使用するパターンを設定
// IgnoreCase : 大文字・小文字を区別しない場合はTrue、区別する場合はFalse
// Global : 文字列全体を検索する場合はTrue、しない場合はFalse
// 【戻り値】
// 正規表現にマッチするかどうかを示すブール値
//////////////////////////////////////////////////
FUNCTION reTest(str, Pattern, IgnoreCase = TRUE, Global = TRUE)
DIM re = CREATEOLEOBJ("VBScript.RegExp")
re.Pattern = Pattern
re.IgnoreCase = IgnoreCase
re.Global = Global
RESULT = re.Test(str)
FEND
結果
INPUT:3>7
文月
使用関数
解説
関連記事
- isDate関数 (自作関数)
- 引数に指定した値が日付として認識できる場合はTrueを返します。認識できない場合はFalseを返します。
- reExecute関数 (自作関数)
- 正規表現 検索を行います。
- reReplace関数 (自作関数)
- 正規表現置換を行います。
- RegExp オブジェクト