# VerifyString

VerifyString 関数を使用して文字列を照合し、合格/不合格出力を生成します。

## VerifyString の入力

パラメータ | 説明
文字列 | テキスト文字列、またはテキスト文字列を含むスプレッドシートセルへの参照を指定します。
フィールド文字列 | 文字列に含まれる文字数を指定し、文字列のさまざまな位置にあると予測される文字に関する情報を提供します。
フィールド定義 | 必要に応じ、[フィールド定義] 設定を使用して [フィールド文字列] のユーザ定義エントリを作成できます。このエントリがフィールド文字列に含まれると、このエントリの挿入位置で有効となる文字のリストが限定されます。

### フィールド文字列

フィールド文字列エントリには、(A～Z)、(a～z)、(0～9)、ハイフン (-)、ドット (.)、スペース ( ) など、すべての英数字を使用できます。

フィールド文字列の各文字は、インデックス付きフィールド位置に対応します。フィールド文字列には、文字列の文字と少なくとも同じ数の位置が含まれていないと、文字列の照合は成功しません (つまり、10 文字存在し、フィールド文字列で 9 文字のみ指定した場合は、最適一致が 9 つ返されます。しかし、8 文字存在し、フィールド文字列で 9 文字指定した場合、関数は #ERR を返します)。デフォルトでは、フィールド文字列の各位置は、アスタリスク (*) か英数字の「ワイルドカード」で示されます。これは、文字列のどの位置でもすべての文字が有効であることを意味します。

定義済みのフィールド文字列エントリは、次のとおりです。

フィールド文字列エントリ | 説明 | 有効な文字
* | ワイルドカード | フォント中の学習済み文字。
N | 数字 | 0123456789
A | 大文字の英字 | ABCDEFGHIJKLMNOPQRSTUVWXYZ
a | 小文字の英字 | abcdefghijklmnopqrstuvwxyz
H | 16 進値 (大文字の英字と数字) | 0123456789ABCDEF
h | 16 進値 (小文字の英字と数字) | 0123456789abcdef
O | 8 進値 | 01234567

フィールド文字列の例:

- 例 1:フィールド文字列が「**********AN」の場合、1～10 番目のフィールド文字列位置ではフォントに含まれるすべての文字が有効です。ただし、11 番目の位置は、照合時に大文字の英字だけが想定されます。また、12 番目の位置は、数字だけが想定されます。

- 例 2:フォントには、0～9 の数字と / だけが含まれます。フィールド文字列が「NN/NN/NN」の場合、1、2、4、5、7、および 8 番目の位置では数字だけが想定されています。また、3 および 6 番目の位置ではスラッシュ (/) だけが想定されています。

  ただし、フィールド文字列が「NN/NN/AA」の場合は、フォントに英字が含まれていないため、#ERR が返されます。

### フィールド定義

必要に応じ、フィールド定義設定を使用してフィールド文字列のユーザ定義エントリを作成できます。このエントリがフィールド文字列に含まれると、このエントリの挿入位置で有効となる文字のリストが限定されます。

このフィールドに新しい定義を追加すると、定義済みの定義を上書きできます。例えば、フィールド定義の値が「A=A」の場合、フィールド定義「A=A」は定義済みのフィールド文字列エントリを上書きするため、文字 A のみが有効な文字とみなされます。

フィールド定義の例:

- 例 1:フィールド定義の値が「#=123;$=3456;%=789」でフィールド文字列が「#$%*******」の場合、1 番目の位置では 1、2、または 3 だけが、2 番目の位置では 3、4、5、または 6 だけが、3 番目の位置では 7、8、または 9 だけが有効です。また、4～10 番目の位置ではフォントに含まれるすべての文字が有効です。
- 例 2:フィールド定義の値が「#=123;$=3456;%=789, A=A」でフィールド文字列が「#$%******A」の場合、1 番目の位置では 1、2、または 3 だけが、2 番目の位置では 3、4、5、または 6 だけが、3 番目の位置では 7、8、または 9 だけが有効です。また、4～9 番目の位置ではフォントに含まれるすべての文字が有効です。[フィールド定義]「A=A」は定義済みの [フィールド文字列] エントリを再マップするため、10 番目の位置では A だけが想定されています。

## VerifyString の出力

戻り値 | 参照されている Text データ構造体の文字列の合格/不合格ステータスを返します。入力パラメータが無効であれば #ERR を返します。 0 = 不合格 1 = 合格