Функция РЕГВ_ЗАМЕНИТЬ
Функция РЕГВ_ЗАМЕНИТЬ выполняет замену фрагментов, соответствующих заданному регулярному выражению.
ФУНКЦИЯ СТРОКА: РЕГВ_ЗАМЕНИТЬ(СТРОКА: стр; СТРОКА: рег_выр; СТРОКА: замена; СТРОКА: опции = "")
Параметры
- стр
- Строка, в которой выполняется поиск.
- рег_выр
- Регулярное выражение.
- замена
- Строка, на которую выполняется замена соответствий.
В этой строке могут задаваться подстановки с использованием символа "$":
$$ – экранирование символа $; $& – подстрока соответствия; $` – часть строки, предшествующая подстроке соответствия; $' – часть строки, следующая за подстрокой соответствия; - опции
- Необязательный параметр. Опции сравнения:
"i" – соответствие вычисляется без чувствительности к регистру символов.
Возвращаемое значение
Строка с выполненными заменами соответствий. В случае ошибки синтаксиса регулярного выражения возвращается пустая строка.
При ошибке синтаксиса регулярного выражения в отладку выводится диагностическое сообщение.
Существует несколько различных вариантов синтаксиса регулярных выражений. В настоящей реализации используется синтаксис Modified ECMAScript. Детали см. Modified ECMAScript regular expression grammar.
Пример
ПЕРЕМ текст = "Quick brown fox" ПЕРЕМ рег_выр_гласные = "a|e|i|o|u" ПЕРЕМ рез1 = РЕГВ_ЗАМЕНИТЬ(текст, рег_выр_гласные, "*") ОТЛАДКА(рез1) ПЕРЕМ рез2 = РЕГВ_ЗАМЕНИТЬ(текст, рег_выр_гласные, "[$&]") ОТЛАДКА(рез2)
Вывод:
Q**ck br*wn f*x Q[u][i]ck br[o]wn f[o]x