Відмінності між версіями «Регулярні вирази в JavaScript»

Матеріал з Вікі ЦДУ
Перейти до: навігація, пошук
Рядок 30: Рядок 30:
 
У регулярних виразах розрізняють наступні види символів:<br>
 
У регулярних виразах розрізняють наступні види символів:<br>
 
''Звичайні символи''
 
''Звичайні символи''
 +
 +
    A.. Z - англійські літери від A до z, малі й великі;
 +
    0 .. 9 - цифри;
 +
  {} - фігурні дужки, крім випадків, коли вони складають групу виду (n, m) (де n і m - числа) і її варіації;
 +
    = - рівне;
 +
    < - Менше;
 +
    > - Більше;
 +
    - - Мінус;
 +
    , - Кома;
 +
    та ін.
 +
 +
''Спеціальні символи''
 +
() - Круглі дужки;
 +
[] - Квадратні дужки;
 +
  \ - Обраний слеш;
 +
  . - Точка;
 +
  ^ - Ступінь;
 +
  $ - Знак долара;
 +
  | - Вертикальна лінія;
 +
  ? - Знак питання;
 +
  + - Плюс.

Версія за 10:42, 29 квітня 2010

Регулярні вирази - це формальна мова пошуку і здійснення маніпуляцій з підрядка в тексті, заснований на використанні метасимволів (символів-джокерів, англ. Wildcard characters). По суті це рядок-зразок, що складається з символів і метасимволів і задає правило пошуку.
Регулярні вирази використовуються деякими текстовими редакторами та допоміжних інструментах для пошуку та підстановки тексту. Наприклад, за допомогою регулярних виразів можна задати шаблони, що дозволяють:

  • Знайти всі послідовності символів «коробка» у будь-якому контексті, як то: «коробка», «король»;
  • Знайти окремо слово «кіт» і замінити його на «кішка»;
  • Знайти слово «кіт», якому передує слово «персидський» або «чеширский»;
  • Прибрати з тексту всі пропозиції, в яких згадується слово кіт або кішка.

Регулярні вирази дозволяють задавати і набагато більш складні шаблони пошуку або заміни.

Об'єкт RegExp

Створення

/ / Повна форма запису
var expr = new RegExp(pattern [, flags]);
/ / Скорочена форма запису (літеральний формат)
var expr = /pattern/flags;

Аргументи
pattern - шаблон пошуку (текст регулярного виразу).
flags - способи пошуку за шаблонами:

  • G - глобальний пошук (обробляються всі збіги з шаблоном пошуку);
  • I - не розрізняти рядкові і заголовні букви;
  • M - багаторядковий пошук.

Порядок вказівки прапорів не має значення.
Опис, приклади
Коли регулярний вираз створюється за допомогою конструктора new RegExp (...), необхідно пам'ятати, що зворотні слеш (\) повинні екранувати, наприклад:

 varexpr = newRegExp('\\w', 'ig');

При використанні літерального формату, цього робити не потрібно:

var expr = /\w/gi;

Обидві запису еквівалентні. Перший варіант може знадобиться, якщо вам доведеться генерувати регулярне динамічно.
Види символів
У регулярних виразах розрізняють наступні види символів:
Звичайні символи

   A.. Z - англійські літери від A до z, малі й великі;
   0 .. 9 - цифри;
  {} - фігурні дужки, крім випадків, коли вони складають групу виду (n, m) (де n і m - числа) і її варіації;
   = - рівне;
   < - Менше;
   > - Більше;
   - - Мінус;
   , - Кома;
    та ін.

Спеціальні символи

() - Круглі дужки;
[] - Квадратні дужки;
 \ - Обраний слеш;
 . - Точка;
 ^ - Ступінь;
 $ - Знак долара;
 | - Вертикальна лінія;
 ? - Знак питання;
 + - Плюс.