Изучение основ моделирования в среде GPSS World. Создание пользовательских переменных. Блоки и команды для манипуляции с сохранёнными данными, страница 8

Помимо математических функций, есть и библиотечные функции для работы со строками. К таким, например, относятся функция конкатенации или выборки нужного слова из строки. Полный список таких функций приведён в таблице 5.

Таблица 5. Библиотечные строковые функции

Название

Обозначение

Возвращаемое значение

Дополнительно

1

2

3

4

Вставка справа

ALIGN(<InSrt>,<SourStr>,<Offset>)

Возвращает копию строки SourStr, со вставленной строкой InSt, начиная с Offset символа

Вставка подстроки идёт справа налево, до начала строки SourStr или окончания всех символов в подстроке InStr

Объединение

CATENATE(<Str1>,<Str2>)

Возвращает копию двух строк Str1 и Str2, объединённых в одну

Таблица 5. Продолжение 1

1

2

3

4

Копирование

COPIES(<Str>,<Count>)

Возвращает строку с Count копий строки Str

Определение типа

DATATYPE(<Datum>)

Возвращает строку, обозначающую тип данных аргумента

Возможные значения: INTEGER, REAL, SRTING и UNSPECIFIED

Поиск

FIND(<TestStr>,<SourStr>)

Возвращает номер символа с которого начинается строка TestStr в строке SourStr

Если подстрока не найдена, возвращается 0

Подстрока слева

LEFT(<Str>,<Max>)

Возвращает копию подстроки из строки Str, состоящую из Max символов, начиная с первого

Первый символ в строке имеет индекс 1

Длинна

LENGTH(<Str>)

Возвращает длину строки

Нижний индекс

LOWERCASE(<Str>)

Возвращает копию строки Str, у которой все символы преобразованы к нижнему регистру

Вставка слева

PLACE(<InSrt>,<SourStr>,<Offset>)

Возвращает копию строки SourStr, со вставленной строкой InSt, начиная с Offset символа

Вставка подстроки идёт слева направо, до окончания строки SourStr или всех символов в подстроке InStr

Множественное объединение

POLYCATENATE(<Str1>,<Str2>)

Возвращает копию нескольких строк, объединённых в одну

Таблица 5. Продолжение 2

1

2

3

4

Подстрока справа

RIGHT(<Str>,<Max>)

Возвращает копию подстроки из строки Str, состоящую из Max символов, начиная с последнего

Преобразование к строке

STRING(<Datum>)

Преобразует данные к их строковому эквиваленту

Сравнение

STRINGCOMPARE(<Str1>,<Str2>)

Сравнивает две строки и возвращает число

Возможные значения:

1 – когда Str1>Str2;

0 – когда Str1=Str2;

-1 – когда Str1<Str2

Вставка

SUBSTRING(<Str>,<Offset>,<Max>)

Возвращает копию подстроки из строки Str, состоящую из Max символов, начиная с Offset символа

Удаление пробелов

TRIM(<Str>)

Возвращает копию строки с удалёнными по краям пробелами

Верхний индекс

UPPERCASE(<Str>)

Возвращает копию строки Str, у которой все символы преобразованы к верхнему регистру

Преобразование к числу

VALUE(<Datum>)

Возвращает числовой эквивалент строки Datum

Преобразование идёт до первого нечислового символа. Если строка состоит из буквенных символов, то будет возвращён нуль

Слово

WORD(<Str>,<Number>)

Возвращает Number слово из строкиStr

Если Number больше количества слов в строке, то будет выведена пустая строка. В качестве разделителей слов принимается пробел или символ табуляции