Регулярные выражения необходимы для проверки соответствия строк указанному шаблону. В скриптах такие выражения должны задаваться в стиле #C, то есть заключаться в косые / и /; либо при помощи оператора new.
Специальные символы регулярных выражений:
\ – Экранирование обычных символов. Позволяет использовать в шаблонах спец. символы.
^ – Указывает на начало входных данных.
$ – Указывает на конец входных данных.
* – Повтор от нуля до бесконечности.
+ – Повтор от одного до бесконечности.
? – Обозначает, что элемент шаблона может присутствовать либо отсутствовать. Также символ вопроса используется при группировке элементов регулярного выражения.
. – Любой символ, кроме перевода строки: \n \r \u2028 или \u2029.
(x) – Находит и запоминает указанную строку.
(?:x) – Находит указанную строку, но не запоминает ее.
x(?=y) – Находит указанную строку x, при условии, что за x следует y.
x(?!y) – Находит указанную строку x, при условии, что за x не следует y.
x|y – Находит x или y.
{n} – Точное количество повторов.
{n,} – Количество повторов от n до бесконечности.
{n,m} – Количество повторов от n до m.
[xyz] – Находит указанный набор символов.
[^xyz] – Исключает указанный набор символов из поиска.
[\b] – Находит символ backspace.
\b – Находит границу слов, например пробел.
\B – Исключает границу слоев.
\cX – Где X – буква от A до Z. Обозначает контрольный символ в строке.
\d – Находит любую цифру.
\D – Исключает любую цифру из поиска.
\f,\r,\n – Соответствующие спецсимволы form-feed, line-feed, перевод строки.
\s – Находит любые пробельные символов, в том числе сам проблем, перевод строки и т.п.
\S – Исключает пробельные символы из поиска.
\t – Символ табуляции.
\v – Символ вертикальной табуляции.
\w – Любая буква.
\W – Исключение любой буквы.
\n – Обратная ссылка на n”ю запомненную скобками подстроку.
\0 – Символ NUL.
\xhh – Находит указанный в двухзначном шестнадцатеричном виде символ.
\uhhhh – Находит символ юникода по его четырехзначному коду.
Примеры:
var myRegexp = /([A-Za-z]+)=(\d+)/; //Объявление регулярного выражения в стиле #C
var myRegexp = new RegExp(“([A-Za-z]+)=(\d+)”); //Объявление регулярного выражения с использованием оператора new
Регулярные выражения произвели прорыв в электронной обработке текста в конце XX века, однако, БАЗИС”скрипты в большей степени ориентированы на выполнение геометрических построений и вычислений. Поэтому подробно регулярные выражения в данном документе на расматриваются. Вместе с тем ниже приводятся несколько примеров обработки текста с использованием регулярных выражений.
Примеры:
var regexp = ‘1234567890’.replace(/(\d)(?=(\d\d\d)+(?!\d))/g, ‘$1,’); //Разбиваем числа на троичные (тысячные) группы
history(regexp);