Метод `LastIndexOf`, напротив, возвращает индекс последнего вхождения указанного символа или подстроки. Если символ или подстрока не найдены, возвращается -1. Пример: ```csharp string текст = "Привет, мир, мир!"; int последнийИндекс = текст.LastIndexOf("мир"); // последнийИндекс будет равен 13 ``` Также как и `IndexOf`, метод `LastIndexOf` имеет несколько перегрузок, позволяющих указывать начальный индекс для поиска, количество символов для поиска и параметры сравнения. Вот сигнатуры некоторых перегрузок метода `LastIndexOf` для класса `string` в C#: 1. `public int LastIndexOf(char value)` 2. `public int LastIndexOf(char value, int startIndex)` 3. `public int LastIndexOf(char value, int startIndex, int count)` 4. `public int LastIndexOf(string value)` 5. `public int LastIndexOf(string value, int startIndex)` 6. `public int LastIndexOf(string value, int startIndex, int count)` 7. `public int LastIndexOf(string value, StringComparison comparisonType)` 8. `public int LastIndexOf(string value, int startIndex, StringComparison comparisonType)` 9. `public int LastIndexOf(string value, int startIndex, int count, StringComparison comparisonType)` Эти перегрузки позволяют проводить поиск с различными параметрами, такими как начальный индекс, количество символов для поиска и параметры сравнения. Дальше разберем некоторые сигнатуры. ### Базовая сигнатура ```csharp public int LastIndexOf(char value); ``` Пример: ```csharp string str = "Hello, world!"; int index = str.LastIndexOf('l'); // index будет равен 10, потому что последний символ 'l' находится на 10-й позиции (индексация с 0) ```