Функции работы с составными величинами


Составные величины или составные поля являются одной из отличительных особенностей среды CLIPS. Для работы с такими величинами предназначена специальная группа функций, краткое описание которых приведено в табл. 15.7.


Таблица 15.7. Функции работы составными величинами

Функция Описание
create$ Создание составной величины
nth$ Получение конкретного элемента составной величины
member$ Поиск конкретного элемента составной величины
subsetp Определение, не является ли одна составная величина подмножеством другой составной величины
delete$ Удаление конкретного элемента составной величины
explode$ Создание составной величины из строки
implode$ Создание строки из составной величины
subseq$ Извлечение подпоследовательности из составной величины
replace$ Замена элемента составной величины
insert$ Добавление новых элементов в составную величину
first$ Получение первого элемента составной величины
rest$ Получение остатка составной величины
length$ Определение числа элементов составной величины
delete-member$ Удаление заданных элементов составной величины
replace-member$ Замена заданных элементов составной величины

 

Функция create$ объединяет заданное количество выражений для создания составной величины. Независимо от количества полей, получившихся в результате, возвращаемое функцией значение всегда является составной вели­чиной. Вызов функции без аргументов возвращает составную величину с нулевой длиной.

Определение 15.32. Функция create$

(create$ <выражение>*)

Для получения конкретного поля составной величины предназначена функ­ция nth$.

Определение 15.33. Функция nth$

(nth$ <целое> <составная-величина>)

Первый аргумент данной функции должен быть целым числом, большим или равным 1, который определяет индекс поля в составной величине, за­данной вторым аргументом. Если заданное число больше количества эле­ментов в составной величине, функция вернет значение nil. Значение, воз­вращаемое функцией, в любом случае является значением типа symbol.

Функция member$ возвращает индекс поля, если оно содержится в составной величине. Если первый аргумент этой функции — простая величина, кото­рая является каким-либо полем второго аргумента, то функция member$ вер­нет целое число — индекс соответствующего поля. Если первый аргумент — составная величина, и она представляет собой часть второго аргумента, то­гда функция возвращает два индекса — начала и конца первой составной величины во второй величине. В противном случае функция возвращает значение false.

Определение 15.34. Функция member$

(memberS <выражение> <составная-величина>)

Функция subsetp проверяет, не является ли одна составная величина подмножеством другой, т. е. содержатся ли все поля первой составной величи­ны и во второй составной величине. Если первая составная величина явля­ется подмножеством второй, функция возвращает значение true, в противном случае — false. Порядок полей не оказывает влияния на работу функции. В случае если первый аргумент имеет нулевую длину, функция subsetp всегда возвращает значение true.




Дата добавления: 2021-12-14; просмотров: 258;


Поиск по сайту:

Воспользовавшись поиском можно найти нужную информацию на сайте.

Поделитесь с друзьями:

Считаете данную информацию полезной, тогда расскажите друзьям в соц. сетях.
Poznayka.org - Познайка.Орг - 2016-2024 год. Материал предоставляется для ознакомительных и учебных целей.
Генерация страницы за: 0.007 сек.