Метод indexOfLast
Метод indexOfLast класса UnicodeString ищет последнее вхождение подстроки в исходной строке. Первым параметром передаётся искомая подстрока. Вторым необязательным параметром можно передать смещение - позицию, с которой нужно начинать поиск. Если подстрока найдена, метод возвращает её позицию в виде целого числа. Если подстрока не найдена, метод возвращает значение false.
Позиции символов нумеруются с нуля. Метод корректно работает с многобайтовыми кодировками, в отличие от стандартных функций PHP для работы со строками.
Синтаксис
public function indexOfLast(string $needle, int $offset = 0): int|false
Пример
Давайте найдём позицию последнего вхождения подстроки 'abcde' в строке:
<?php
use SymfonyComponentStringUnicodeString;
$str = new UnicodeString('hello abcde hello');
$res = $str->indexOfLast('hello');
var_dump($res);
?>
Результат выполнения кода:
12
Пример
Давайте убедимся, что метод возвращает false, если подстрока не найдена:
<?php
use SymfonyComponentStringUnicodeString;
$str = new UnicodeString('hello world');
$res = $str->indexOfLast('abcde');
var_dump($res);
?>
Результат выполнения кода:
false
Пример
Давайте передадим второй параметр offset, чтобы ограничить область поиска:
<?php
use SymfonyComponentStringUnicodeString;
$str = new UnicodeString('abcde abcde abcde');
$res = $str->indexOfLast('abcde', 10);
var_dump($res);
?>
Результат выполнения кода:
12
Смотрите также
-
метод
indexOf,
который ищет первое вхождение подстроки -
метод
beforeLast,
который возвращает часть строки до последнего вхождения -
метод
afterLast,
который возвращает часть строки после последнего вхождения -
класс
UnicodeString,
который представляет собой объект строки