指定の文字列に指定のパターン文字列があるかどうかを判断します。パターン文字列には多数の「ワイルドカード」文字や論理記号を使用できるため、複雑な文字パターンを照合できます。
@Matches( string ; pattern )
string
文字列または文字列リスト。検索対象の文字列を引用符で囲んで指定します。検索対象の文字列が含まれているフィールドの名前を入力することもできます。フィールド名は引用符で囲まないでください。
pattern
文字列または文字列リスト。string 内で検索するパターンを引用符で囲んで指定します。ワイルドカード文字と記号を使用することもできます (下表参照)。パターンがセットとして中括弧で囲まれている場合を除き、?、*、&、!、|、¥、+ の記号の前には円記号を付ける必要があります。パターンをリテラルとして指定する場合は、記号の前に円記号を 1 つではなく 2 つ付ける必要があります。円記号は文字列リテラルではエスケープ文字であるため、「¥?」と指定すると照合エンジンには「?」が渡され、ワイルドカードとして処理されます。「¥¥?」と指定すると照合エンジンには「¥?」が渡され、疑問符文字として処理されます。
flag
Boolean 型
ワイルドカード文字と論理記号は次のとおりです。
記号 |
使い方 |
---|---|
C |
C は任意の文字。特殊文字以外の任意の 1 文字と一致します。 |
? |
任意の 1 文字と一致します。 |
* |
任意の文字列 (複数の文字) と一致します。 |
{ABC} |
ABC というセットの中の文字のいずれかと一致します。 |
{A-FL-R} |
A から F と L から R というセットの中の文字のいずれかと一致します。 |
+C |
任意の回数繰り返される C (または c) に一致します。 |
! |
パターンの論理的な意味を否定します (論理 NOT)。 |
| |
2 つのパターンの論理 OR をとります。 |
& |
2 つのパターンの論理 AND をとります。 |
パターン一致の例を示します。
パターン |
一致 |
---|---|
ABC |
3 文字の文字列 [a|A][b|B][c|C]。 |
{ABC}{ABC} |
大文字 A、B、または C からなる 2 文字の文字列 |
A?C |
a または A で始まり、c または C で終わる任意の 3 文字の文字列。 |
??? |
任意の 3 文字の文字列 |
+? |
Null 文字列を含む任意の文字列 |
+?{A-Z} |
大文字で終了する任意の文字列 |
+{!A-Z} |
大文字を含まない任意の文字列 |
最初または 2 番目のパラメータがリストである場合、2 番目のパラメータ内のいずれかの要素が最初のパラメータ内のいずれかの要素と一致すると、この関数は true を返します。
@Matches("A big test";"a?test")
@Matches("A big test";"a?????test")
@Matches(@Lowercase(State);"*mont*")
@If(@Matches(Division;"Central | Midwest");224;124)
@If(@Matches(@Text(input);"+{!A-z}");@Success;@Failure("Value cannot be a letter"))
@If(@Matches(US_State;"{A-Z}{A-Z}");@Success;@Failure("Entry must be a valid two-letter state abbreviation"))
@Text(@Matches("one" : "two" : "three"; "four" : "five" : "six"))
@Text(@Matches("one" : "two" : "three"; "three" : "four" : "five" : "six"))
LotusScript® 言語の Like 演算子