Статус документа
Статус документа

ГОСТ Р ИСО 10303-11-2009 Системы автоматизации производства и их интеграция. Представление данных об изделии и обмен этими данными. Часть 11. Методы описания. Справочное руководство по языку EXPRESS

     8.1.6 Строковый тип данных


Областью определения типа данных STRING являются последовательности символов. Символами, допустимыми в строковых значениях, являются символы ИСО/МЭК 10646-1 из позиций 09, 0A, 0D и графические символы, расположенные в позициях от 20 до 7Е и от А0 до 10FFFE.

   Синтаксис:

     311 string_type = STRING [ width_spec ] .
     341 width_spec = ' ( ' width ' ) ' [ FIXED ] .
     340 width = numeric_expression .


Тип данных STRING может иметь как фиксированную, так и переменную длину (число символов). Если фиксированная длина строки конкретно не указана (посредством зарезервированного слова FIXED в определении), то строка имеет переменную длину.

Областью определения типа данных STRING фиксированной длины является множество всех последовательностей символов длины, точно указанной в определении типа.

Областью определения типа данных STRING переменной длины является множество всех последовательностей символов длины, меньшее или равное максимальной длине, указанной в определении типа.

Если длина не указана, то областью определения является множество всех последовательностей символов без ограничения на длину этих последовательностей.

Адресация к подстрокам и отдельным символам может осуществляться посредством подстрочных индексов, как описано в 12.5.

В пределах строки имеет значение регистр ввода букв (верхний или нижний).

Правило: значением выражения width должно быть положительное целое число.

Примеры
     


    1 В данном примере определена строка переменной длины, значения которой не имеют заданной максимальной длины:

string1 : STRING;

2 В данном примере определена строка с максимальной длиной равной десяти символам, значения которой могут иметь длину от нуля до десяти символов:

string2 : STRING(10);

3 В данном примере определена строка фиксированной длины равной десяти символам, значения которой должны содержать ровно десять символов:

string3: STRING(10) FIXED;