понедельник, 7 ноября 2016 г.

1.14 Регулярные выражения

(Из книги "Говоря на языке JavaScript").

В JavaScript есть встроенная поддержка регулярных выражений (Глава 19).  Они объявляются с помощью слэшей:
 
/^abc$/
/[A-Za-z0-9]+/

Метод test(): есть ли совпадения?

/^a+b+$/.test('aaab') // true
/^a+b+$/.test('aaa')  // false

Метод exec(): выбор совпадений и групп

/a(b+)a/.exec('_abbba_aba_') // [ 'abbba', 'bbb' ]

Массив, возвращенный методом, содержит полное совпадение в элементе с индексом 0, первую группу в элементе с индексом 1 и т.д, Существует также способ (обсуждается в разделе RegExp.prototype.exec: выбор групп) применить этот метод последовательно ко всем найденным вхождениям.

Метод replace(): искать и заменять

'<a> <bbb>'.replace(/<(.*?)>/g, '[$1]') // '[a] [bbb]'

Первый параметр метода replace должен быть регулярным выражением с флагом /g. В противном случае будет заменено лишь первое вхождение. Существует способ (обсуждается в разделе String.prototype.replace: искать и заменять) использовать функцию для замены вычисляемым значением.

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

Отправить комментарий