ある文字列が別の文字列内で出現する、文字列の末尾からの位置を戻します。
構文
InStrRev(string1, string2[, start[, compare]])
引数:
表11-17 比較定数および説明
| 定数 | 値 | 説明 |
|---|---|---|
vbBinaryCompare |
0 | バイナリ比較を実行します |
vbTextCompare |
1 | テキスト比較を実行します |
戻り値
InStrRev関数は、次の値を戻します:
表11-18 InstrRev関数の戻り値
| 次の場合 | Instの戻り値 |
|---|---|
| string1が長さゼロ | 0 |
| string2が長さゼロ | Start |
| string2がない | 0 |
| string1内でstring2を検出 | 一致が見つかった位置。 |
| start > Len(string2) | 0 |
備考
次の例では、InStrRev関数を使用して文字列を検索します:
例1:
Dim SearchString, SearchChar, MyPos SearchString ="abcdABCD" ' String to search in. SearchChar = "a" ' Search for "a" MyPos = InstrRev(SearchString, SearchChar) ' Default Comparison is binary and starting at the last position (Third and Fourth argument is omitted) 'Output: 1
例2:
Dim SearchString, SearchChar, MyPos SearchString ="XXpXXpXXPXXP" ' String to search in. SearchChar = "P" ' Search for "P". MyPos = InstrRev(SearchString, SearchChar, 8) ' Comparison is binary by default (last argument is omitted). 'Output: 0
例3:
Dim SearchString, SearchChar, MyPos SearchString ="XXpXXpXXPXXP" ' String to search in. SearchChar = "P" ' Search for "P". MyPos = InstrRev(SearchString, SearchChar, 10, 0) ' A binary comparison starting at position 10. 'Output: 9 MyPos = InstrRev(SearchString, SearchChar, -1, 1) ' A textual comparison starting at the last position. 'Output: 12
例4:
Dim SearchString, SearchChar, MyPos SearchString ="abcdABCD" ' String to search in. SearchChar = "a" ' Search for "a" MyPos = InstrRev(SearchString, SearchChar, -1, 0) ' A binary comparison starting at the last position. 'Output: 1 MyPos = InstrRev(SearchString, SearchChar, -1, 1) ' A textual comparison starting at the last position. 'Output: 5
注:
InStrRev関数の構文は、InStr関数の構文と同じではありません。