9 разных способов поиска строки в JS

Строки мы используем почти в каждом файле нашего приложения. Операции проверки, сравнения и обновления довольно распространены в большинстве сценариев. Следовательно, иметь лучшее представление о методах поиска строк было бы очень полезно.

К концу этой статьи вы сможете получить четкое представление о том, что делает каждый метод строки поиска. Это приведет к тому, что вы будете использовать их в нужном месте при кодировании.

Одна забавная вещь, которую я заметил на протяжении всего своего обучения. Раньше я забывал или путался, где использовать даже небольшие методы JS, потому что моей любимой частью кодирования было копирование и вставка.

Я лично верю в экспериментирование с вещами вместо того, чтобы запоминать материал. Я надеюсь, что этого введения будет достаточно для этого. Давайте прыгнем на поле боя.

1. индекс

1. inputStr.indexOf(str)- возвращает first вхождение упомянутого str в заданное inputStr.

2. inputStr.indexOf(str, 10) - возвращает first вхождений строки после 10-й позиции.

2. последний индекс

То же, что и indexOf, но ищет с конца строки.

  1. inputStr.lastIndexOf(str) - возвращает last вхождение упомянутого str в заданное inputStr
  2. inputStr.lastIndexOf(str, 10) - возвращает last вхождений строки с 10-го индекса до начала.

3. поиск

search() такой же, как indexOf, но не разрешает параметр позиции.

Принимая во внимание, что indexOf не поддерживает поиск на основе регулярных выражений, но search() поддерживает его.

4. матч

match() ищет указанную строку так же, как поиск, но возвращает массив совпадающих строк.

5. включает

includes() возвращает true, если строка найдена.

6. начинается с

Возвращает логическое значение, если строка начинается с указанного значения.

  1. str.startsWith('test') - если 'str' начинается с 'test', то возвращает true, иначе false.
  2. str.startsWith('test', 10) - 10-й индекс в строке начинается с test или нет.

7. заканчивается с

Возвращает логическое значение, если строка заканчивается указанным значением.

  1. str.endsWith('test')- если 'str' заканчивается на 'test', то возвращает true, иначе false.
  2. str.endsWith('test', 10) - до 10-го индекса в строке заканчивается на test или нет.

8. тест

Возвращает true, если в строке найдено совпадение. Это метод RegExp, который проверяет выражения регулярных выражений.

pattern.test(тестовая строка);

ex: /\d/.test(1234);

Вы могли бы усомниться в том, что includes делает то же самое. Не прокручивайте вверх (раньше я это делал), я указал разницу здесь.

Я обычно ничего не усложняю. Итак, includes предназначен для работы со строками, тогда как test работает с объектами регулярных выражений.

Хорошо. Давайте протестируем test прямо сейчас 😂

9. исполнитель

Возвращает совпадающий массив сведений, когда совпадение найдено. Опять же, это похоже на строку match. Надеюсь, на этот раз вам не нужны объяснения.

Дайте мне знать, если вы обнаружите какие-либо ошибки. Я очень рад обновить эту статью в любое время.

Спасибо 😊