НАЧАЛО >> Оглавление >> Общее описание >> Язык форматирования ИРБИС >> Функции >> Строковые функции >> Подключение программ к формату (форматные выходы) >> &uf('+9... - Группа технических форматных выходов
Группа технических форматных выходов
+9T<исходные_данные>
где:
T – определяет тип и принимает след.значения:
0 - вернуть номер текущего повторения в повторяющейся группе (исходные данные не задаются);
1 - вернуть имя файла из заданного полного пути/имени;
2 - вернуть путь из заданного полного пути/имени;
3 - вернуть расширение из заданного полного пути/имени;
4–вернуть имя диска из заданного полного пути
5 - вернуть длину исходной строки;
6 - вернуть фрагмент строки:
+96A*SSS.NNN#<строка>
7 - вернуть строку в верхнем регистре;
8 - заменить в заданной строке один символ на другой (регистр учитывается):
+98ab<строка>
9 - групповая установка глобальных переменных (для ИРБИС-Навигатора). Исходная строка закодирована через URLEncode (&unifor('+3E....). После раскодировки рассматривается как список строк(TStringList.Text). Каждая строка этого списка имеет структуру: NNN#<значение_глобальной_переменной_NNN>;
+99
A - Вернуть размер файла в байтах
+9A
C – вставить данные из заданного текстового файла:
+9С<path>,<dbname>,<filename>
D – сохранить заданный внутренний двоичный объект в заданном файле:
+9DNN#<полный путь>
F – вернуть ANSI-символ с заданным кодом;
G - преобразовать заданную строку в список слов;
+9G<строка>
Границы слов определяются на основе таблицы алфавитных символов.
I - Заменить в исходных данных некоторую заданную последовательность символов другой заданной последовательностью символов
+9I!AAAA!/BBBB/<данные>
где АААА – последовательность символов, подлежащая замене; ВВВВ – заменяющая последовательность символов; символ ! – уникальный разделитель, отсутствующий в строке АААА; символ / – уникальный разделитель, отсутствующий в строке ВВВВ. ВВВВ может быть пустым значением, в этом случае последовательность АААА будет удаляться. Обрабатываются ВСЕ (а не только первое) вхождения АААА в исходные данные. В качестве разделителей можно использовать ТОЛЬКО символы стандартного набора (с кодом менее 128).
J - Представить заданный двоичный файл в виде: ^A<тип_файла>^B<данные файла перекодированные на основе URLEncode>
+9J<полный путь и имя файла>
Имя файла может задаваться в виде маски, в этом случае использоваться будет первый найденный соответствующей маске файл/
K - Удалить заданный файл. Если имя файла задано в виде маски, то удаляться будут все соответствующие маске файлы.
+9K<полный путь и имя файла>
L - Проверить наличие файла/корректность URL
+9L<path>,<dbname>,<filename>
где:
Функция возвращает:
Примеры:
&uf('+9L1,,\deposit\rksu.fst')
(&uf('+9L10,',&uf('+D'),',',v951^A))
R - Преобразование римского числа в арабское
+9R<римское_число>
S - Возвращает позицию первого символа найденного вхождения подстроки в исходную строку. Считается, что символы в строке нумеруются с 1. Если подстрока не найдена, то возвращает 0. Комментарий: следует отметить, что в функции Вернуть часть строки – &uf('+96… указывают смещение, а не позицию символа.
+9S!подстрока!<исходная_строка>
где подстрока – подстрока, которую нужно найти; <исходная_строка> – исходная строка для поиска; символ ! – уникальный разделитель, отсутствующий в искомой подстроке.
V - Вернуть номер поколения ИРБИС. Возвращает поколение системы, в которой осуществляется расформатирование. Может быть полезен при разработке единых форматов, которые по-разному выполняются в ИРБИС 32 и ИРБИС 64
+9V
возвращает:
X - Преобразование арабского числа в римское
+9X<арабское_число>