В Javascript есть несколько встроенных функций, которые вы можете использовать в своем одноразовом использовании, но заходил ли кто-нибудь в Указатель методов JavaScript в веб-документах MDN, чтобы проверить их? Я не сомневаюсь, что ваш первый инстинкт - убежать и никогда не оглядываться. Огромное количество методов на этом сайте наверняка вызовет у вас некоторое беспокойство, но я немного уменьшу давление, когда мы рассмотрим методы match (), exec () и replace ().

Давай перейдем к делу ...

1. МАТЧ ()

Метод match () возвращает массив совпадений, полученных в результате проверки регулярного выражения со строкой. Следующие отрывки должны прояснить…

Синтаксис:

Пример без глобального флага:

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

Пример с глобальным флагом:

Как видите, когда мы используем глобальный флаг или флаг g в конце регулярного выражения, мы запрашиваем все совпадения. Без флага g метод match () вернет только первое совпадение. Другой распространенный флаг - это флаг i для сопоставления без учета регистра.

2. EXEC ()

Метод exec () возвращает массив с совпадением для каждого использования. Когда глобальный флаг используется в регулярном выражении, он позволяет использовать exec () для возврата следующего совпадения после каждого вызова метода. Когда совпадений больше нет, результатом будет null.

Синтаксис:

Пример последовательного ручного вызова .exec ():

Пример автоматического вызова .exec () с циклом:

Мы используем метод exec () в цикле while в приведенном выше фрагменте. Цикл непрерывно вызывает r.exec (s) в каждом цикле и записывает последовательное совпадение каждый раз, когда оно вызывается в цикле while. Цикл while остановится, когда совпадений больше не будет, в результате будет получено null.

3. ЗАМЕНИТЬ ()

Метод replace () вызывается для строки и принимает два аргумента: шаблон, который может быть строкой или регулярным выражением, а второй - это замена, которая будет строкой или функцией обратного вызова. Метод возвращает новую строку с совпадениями, замененными заменой во втором аргументе. Метод replace () может быть мощным инструментом, если вы этого хотите.

ПРИМЕЧАНИЕ. Метод заменит первое совпадение только в том случае, если шаблон является строкой или если в регулярном выражении нет глобального флага.

Синтаксис:

Пример с функцией обратного вызова:

В этом примере мы использовали регулярное выражение с глобальным флагом, значением r и функцией обратного вызова replacer. Мы просто захватываем ВСЕ совпадения, как это обозначено глобальным флагом, где есть три последовательных цифры, за которыми следует тире или точка, за которыми следуют четыре последовательные цифры в строке. Затем мы заменяем первое совпадение, 929–0919, и второе совпадение, 333–4543, на то, что находится во втором аргументе нашего метода replace (). Второй аргумент содержит функцию обратного вызова, replacer,, которая возвращает строку «слова». Новая строка теперь состоит из «числа - это слова и слова». Также следует отметить, что функция обратного вызова содержит аргумент, который является совпадением. Мы можем использовать аргумент в функции обратного вызова, если хотим изменить исходное соответствие.

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

ВСЕ ОБ ЭФФЕКТИВНОСТИ.