Оператор CHA/CHAC

Navigation:  ПРИЛОЖЕНИЯ > 7. Язык Пакетной Корректировки > Операторы корректировки >

Оператор CHA/CHAC

Previous pageReturn to chapter overviewNext page

Замена данных в поле или в подполе.

Отличие двух операторов в том, что CHAC выполняется с учетом регистра.  Для определения заменяемых и заменяющих данных используются ФОРМАТ 1 и ФОРМАТ 2. Выполняются следующие правила:

Если ПОВТОРЕНИЕ задано не признаком ‘F’, то:

первая строка ФОРМАТА 1 является той строкой, которая ищется в заданном поле/подполе (в заданном повторении или во всех повторениях) – строка A;

первая строка ФОРМАТА 2 является строкой, которая должна заменить найденную строку – строка B.

Если строка А пустая, то строка В приписывается в конец корректируемого поля/подполя.

Если строка В пустая, то строка А удаляется. Пустую строку следует получать, используя оператор пропуска строки #.

Если ПОВТОРЕНИЕ задано признаком ‘F’, то:

строки, получаемые ФОРМАТОМ 1 (строки Ai), ищутся в соответствующих по порядку повторениях поля;

строки, получаемые ФОРМАТОМ 2 (строки Bi), заменяют в соответствующих их порядку повторениях строки Ai, т.е. строка Bi заменит в i-ом повторении заданного поля или в подполе заданного поля строку Ai;

если строка Ai пустая, то строка Bi приписывается, если строка Bi пустая, то строка Ai удаляется.

Если в поле заданное для корректировки подполе встречается несколько раз, то корректируются все подполя.

Если строка А встречается в поле/подполе несколько раз, то заменяются все строки А.

Поиск строки A в тексте записи проводится без учета регистра (перед сравнением все переводится в верхний регистр). Строка B пишется в запись в том регистре, в котором задана.

 


См. также:

Операторы корректировки

Примеры заданий