Находит последнее вхождение подстроки или символа в пределах строки
Важное примечание: В версиях до и включая v0.20.0b, InStrRev
содержит ошибку, которая может привести к пропускам несколько соотвествий.
Это исправлено в v0.21.0b.
Syntax
Usage
last = InStrRev( str, [ Any ] substring [, start ] )
Parameters
str
Строка , в которой нужно произвести поиск.
substring
Подстрока , которую нужно найти.
start
Позиция в str , с котором начнется поиск.
Первый символ начинается в позиции 1.
Возвращаемое значение
Позиция последнего вхождения substring в str.
Описание
Находит позицию последнего вхождения подстроки или символа в строке. Если
параметр start не указан или равен -1, поиск начинается с
последнего символа.
Возвращается ноль (0) если substring не найдена, либо str
или substring пустые строки, или start
меньше 1 (исключение -1), или start больше, чем длина str.
Если ключевое слово Any указано, InStr
возвращает последнее вхождение любого символа в substring.
Пример
' Это вернет 4
Print InStrRev("abcdefg", "de")
' Это вернет 0
Print InStrRev("abcdefg", "h")
Dim test As String
Dim idx As Integer
test = "abababab"
idx = InStrRev(test, "b")
Do While idx > 0 'Если
не найдено, цикл будет пропущен
Print """b"" at " & idx
idx = InStrRev(Test, "b", idx - 1)
Loop
'Пример Unicode:
dim text as wstring*20
text = "Привет, мир!"
print instrrev(text,"ет") ' отобразит 5
|
Platform Differences
- The wide-character string version of InStrRev is not supported for DOS target.
Dialect Differences
- Not available in the -lang qb dialect unless referenced with the alias __Instrrev.
Differences from QB
See also