<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <title>regsub</title> </head> <body> <h1>regsub</h1> <p>Команда выполняет подстановки, используя регулярные выражения.</p> <h2>СИНТАКСИС</h2> <pre> <strong>regsub</strong> ?<em>switches</em>? <em>exp</em> <em>string</em> <em>subSpec</em> <em>varName</em> </pre> <h2>ОПИСАНИЕ</h2> <p>Команда сравнивает регулярное выражение <em>exp</em> и строку <em>string</em> и копирует <em>string</em> в переменную, заданную именем <em>varName</em>. Если совпадение найдено, то при копировании часть строки <em>string</em>, соответствующая <em>exp</em>, замещается на <em>subSpec</em>. Если <em>subSpec</em> содержит один из символов <strong>&</strong> or <strong>\0</strong>, то он заменяется на часть строки <em>string,</em> которая соответствует шаблону <em>exp.</em> Если <em>subSpec</em> содержит <strong>\n</strong>, где n - целое число от 1 до 9, то это выражение заменяется на часть строки <em>string</em>, которая соответствует n-ому заключенному в скобки выражению в <em>exp</em>. Чтобы избежать специальной интерпретации перечисленных символов и символа <strong>обратный слэш</strong>, их необходимо экранировать символом <strong>обратный слэш</strong>. Чтобы избежать возможных проблем с интерпретацией символов <strong>обратный слэш</strong> в <em>exp</em>, проще всего заключить <em> exp</em> в фигурные скобки.</p> <p>Если начальные аргументы команды начинаются с символа <strong>-</strong>, они считаются опциями команды. Ниже приведен список поддерживаемых опций.</p> <dl> <dt><strong>-all</strong></dt> <dd>Ищутся все подобласти <em>string</em>, соответствующие <em>exp</em>, и для каждой из них производится замена. Символы <strong>&</strong> и <strong>\n</strong> замещаются на очередной фрагмент <em>string</em>, соответствующий <em>exp</em>. То есть каждый раз они могут замещаться на различные выражения.</dd> <dt><strong>-nocase</strong></dt> <dd>При поиске соответствующих фрагментов строки не различаются буквы в верхнем и нижнем регистре. Тем не менее, подстановка производится в исходном регистре.</dd> <dt><strong>--</strong></dt> <dd>Означает конец опций. Следующий аргумент будет рассматриваться как exp, даже если он начинается с <strong>-</strong>.</dd> </dl> <p>Команда возвращает количество найденных (и, соответственно, замещенных) интервалов. Правила соответствия строк регулярным выражениям приведены в описании команды <strong><a href="regexp.html">regexp</a></strong>.</p> </body> </html>