Відмінності між версіями «Регулярні вирази в 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 - числа) і її варіації; = - рівне; < - Менше; > - Більше; - - Мінус; , - Кома; та ін.
Спеціальні символи
() - Круглі дужки; [] - Квадратні дужки; \ - Обраний слеш; . - Точка; ^ - Ступінь; $ - Знак долара; | - Вертикальна лінія; ? - Знак питання; + - Плюс.