«Единственный способ творить великие дела – это любить то, что ты делаешь»
JavaScript


Игра на «Морской Бой» на JavaScript: Простая Игра и Игра для Двоих


Рассмотрим следующие методы, которые используются при работе со строковыми объектами в javascript - indexOf и lastIndexOf.

Методы indexOf и lastIndexOf предназначены для поиска в строке совпадений с каким-либо образцом.

Для примера возьмем произвольную строку:

<script type="text/javascript">

var anyString = "Кто сказал Мяу-Мяу";

</script>

Допустим, что перед нами стоит задача найти совпадение в стоке. Нужно выяснить - есть ли в этой строке слово «Мяу».



Метод indexOf в JavaScript - Поиск совпадения с начала строки

Для поиска совпадения с начала строки предназначен метод indexOf(). При этом в качестве его параметра следует указать искомое слово.

Метод indexOf() возвращает результат, который для наглядности можно вывести на экран. Далее смотрим пример.

Фрагмент кода

<script type="text/javascript">

var anyString = "Кто сказал Мяу-Мяу";

document.write(anyString.indexOf("Мяу")); /* Ищем совпадение, начиная с начала строки */

</script>

Результат

В результате исполнения кода мы видим число 11. Что это значит? Это значит, что буква М слова «Мяу», которое мы ищем в общей фразе (строке) имеет порядковый номер 11.

Таким образом, метод indexOf возвращает позицию, с которой начинается совпадение. При этом отсчет ведется с 0.

Если же пробовать искать несуществующее слово (набор символов) в строке, то метод indexOf в качестве результата своей работы вернет -1.

Фрагмент кода

<script type="text/javascript">

var anyString = "Кто сказал Мяу-Мяу";

document.write(anyString.indexOf("Гав")); /* Ищем совпадение, начиная с начала строки */

</script>

Результат

Метод lastIndexOf в JavaScript - Поиск совпадения с конца строки

Обратите внимание: в рассмотренном ранее примере два слова «Мяу». В то время как метод indexOf выдал только одну позицию - 11. То есть ту, которая ближе к началу строки.

Здесь мы подошли к методу lastIndexOf. Для чего нужен он?

Метод lastIndexOf ищет совпадение с конца строки.

Фрагмент кода

<script type="text/javascript">

var anyString = "Кто сказал Мяу-Мяу";

document.write(anyString.lastIndexOf("Мяу")); /* Ищем совпадение, начиная с конца строки */

</script>

Результат

Теперь в результате исполнения кода мы видим число 15. Это говорит о том, что в строке есть ещё одно слово "Мяу", которое уже ближе к концу строки и которое начинается с позиции номер 15 (начало совпадения - это 15-ый символ строки).

Обратите внимание: метод lastindexOf ищет в строке совпадение с каким-либо образцом, начиная с ее конца. Но отсчет позиции ведется все также с начала строки.

Метод lastIndexOf также как и метод indexOf возвращает -1, если совпадений в строке не найдено.



Читайте также...



Отзывы и комментарии:

Комментариев нет...

Оставить отзыв:

Ваше Имя:

Текст комментария:

Ответьте на вопрос:

Сколько дней в Високосном году?


Объект String
Поиск совпадений в строке - Методы indexOf и lastIndexOf
1986
Свойство length - Число символов в строке
2232
Практическая задача - Свойство length
890
Регистр строки - toUpperCase и toLowerCase
20578
Практическая задача - Методы toUpperCase и toLowerCase
954
Практическая задача - Методы indexOf и lastIndexOf
918
Метод slice - Копирование из строки
1994
Практическая задача - Метод slice
1010
Методы charAt и charCodeAt - Возвращаем символ и КОД символа
5608
Практическая задача - Методы charAt и charCodeAt
2417
Метод search - Регулярные выражения
1795
Регулярные выражения - Начало и Конец строки
1454
Практическая задача - Регулярные выражения
751
Метод match - Возвращает массив из совпадений - Глобальный поиск g
2424
Поиск сайта в строке
1111
Практическая задача с кредитной картой
633
Метод replace - Замена совпадений
3279
Практическая задача - Метод replace
1651
Метод trim в - Удаление пробелов в начале и конце строки
4382
Метод substring - Извлекает часть строки
707
Метод split в JavaScript - Разделитель строки
1038
Помощь сайту
Yandex-деньги/Ю-Money
410011236419322
Перевод на карту СБ
4276 1300 1671 5819
WebMoney
R711879515665 Z861169301432

Тематические публикации
Популярные заметки
Последние заметки