<!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>&amp;</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>&amp;</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>