javascript/reference/javascript osnov/regv
смотрим также
Материал из Справочник Web-языков
Содержание |
Регулярное выражение
Регулярное выражение - символьный шаблон для выполнения операций поиска и замены в тексте. Регулярные выражения в JavaScript схожи с регулярными выражениями языка Perl.
Задание регуляных выражений
С помощью литералов. Литералы регулярных выражений задаются в виде символов заключенных между слешами (/).
<js>var t = /\d*/;</js>
С помощью конструктора объектов RegExp()
<js>var t = RegExp("\d*");</js>
Символы литералов
Все алфавитные символы и цифры в регулярных выражениях соответсвуют самим себе. Указать некоторые неалфавитные символы можно с помощью последовательности начинающейся с \.
Символы литералов в регуляных выражениях
\0 - Символ NUL (\u0000) \t - Табуляция (\u0009) \n - Перевод строки (\u000A) \v - Вертикальная табуляция (\u000B) \f - Перевод страницы (\u000C) \r - Возврат каретки (\u000D) \xnn - Символ из набора Latin, задаваемый шестнадцатеричным числом nn; например, \x0A – равносильно \n \uxxxx Unicode-символ, заданный шестнадцатеричным числом xxxx; например, \u0009 – равносильно \t \cX Управляющий символ ^X; например, \cJ равносильно символу перевода строки \n
Классы символов
[...] - Любой символ указанный в скобках [^...] - Любой символ не указанный в скобках . - Любой символ, кроме перевода строки или другого разделителя Unicode строки \w - Любой текстовый ASCII символ. Равносильно [a-zA-Z0-9_] \W - Любой символ, не являющийся текстовым ASCII-символом. Равносильно [^a-zA-Z0-9_] \s - Любой символ-разделитель из набора Unicode \S - Любой символ, не являющийся символом-разделителем из набора Unicode. \w и \S – это не одно и то же \d - Любые ASCII-цифры. Равносильно [0-9] \D - Любой символ, отличный от ASCII-цифр. Равносильно [^0-9] [\b] - Литерал символа «забой»
Повторение
{n,m} - Соответствует предшествующему шаблону, повторенному не менее n, но не более m раз {n,} - Соответствует предшествующему шаблону, повторенному n или более раз {n} - Соответствует в точности n экземплярам предшествующего шаблона ? - Соответствует нулю или одному экземпляру предшествующего шаблона; предшествующий шаблон является необязательным. Равносильно {0,1} + - Соответствует одному или более экземпляру предшествующего шаблона. Равносильно {1,} * - Соответствует нулю или более экземплярам предшествующего шаблона. Равносильно {0,}
Примечание. Перед символами ? и * шаблон может отсутствовать, такой случай трактуется как - предшествующий шаблон является любым символом