Меню
0
0 комментариев

Что такое объект RegExp (регулярные выражения) в Базис-Скрипт?

0
Анонимный пользователь 0 Коментарии

Регулярные выражения необходимы для проверки соответствия строк указанному шаблону. В скриптах такие выражения должны задаваться в стиле #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);

Top