INSTRファンクション群(INSTR、INSTRB、INSTRC、INSTR2およびINSTR4)は、文字を使用して文字列からサブストリングを検索し、文字列のうち指定したサブストリングに一致する部分の最初の文字の位置を返します。戻り値となるサブストリング位置の決定方法は各ファンクションで異なります。
INSTRは、入力キャラクタ・セットの定義どおりに文字を使用して長さを計算します。
INSTRBは、バイトを使用して長さを計算します。
INSTRCは、Unicodeの完全文字を使用して長さを計算します。
INSTR2は、UCS2コード・ポイントを使用して長さを計算します。
INSTR4は、UCS4コード・ポイントを使用して長さを計算します。
戻り値
検索が成功した場合はゼロ以外のINTEGER、成功しなかった場合は0
(ゼロ)。
構文
{INSTR | INSTRB | INSTRC | INSTR2 | INSTR4} (string , substring [, position [, occurrence]])
引数
検索元のテキスト式。
検索元で検索する文字列。
string内でファンクションが検索を開始する位置を示すゼロ以外のINTEGER。INSTRは、入力キャラクタ・セットでの定義どおりに文字を使用してpositionを計算します。INSTRBは、バイトを使用してpositionを計算します。INSTRCは、Unicodeの完全文字を使用してpositionを計算します。INSTR2は、UCS2コード・ポイントを使用してpositionを計算します。INSTR4は、UCS4コード・ポイントを使用してpositionを計算します。
positionが負数である場合、INSTRはstringの最後から逆方向に数えて検索します。positionのデフォルト値は1
なので、ファンクションはstringの最初の位置から検索を開始します。
stringでどの一致文字列をファンクションが検索するかを示すINTEGER。occurrenceの値は正数である必要があります。occurrenceのデフォルト値は1
なので、ファンクションはsubstringの最初の一致文字列を検索します。
例
例7-127 文字位置を使用したサブストリング位置の順方向検索
次の例は、文字列「Corporate Floor」の3番目の文字から文字列「or」を検索します。戻り値は、2番目の一致文字列「or」の最初の文字がある「Corporate Floor」における位置です。
SHOW INSTR('Corporate Floor','or', 3, 2) 14