Пример 15.8. Использование функций str-compare и str-length

(str-compare "abсd" "abсd")

(str-compare abcz abсd)

(str-compare abсd abcz)

(< (str-compare "stringl" "string2") 0)

(str-length "abed")

(str-length xyz)

Функция check-syntax позволяет проверить текст, заданный строкой, на наличие синтаксических и семантических ошибок языка CLIPS. Функция возвращает значение FALSE, если в тексте не было найдено ошибок и невер­ных речевых конструкций. Значение MISSING-LEFT-PARENTHESIS возвращает­ся, если первый значащий символ строки не является открывающей круг­лой скобкой. Значение EXTRANEOUS-INPUT-AFTER-LAST- PARENTHESIS означает, что в строке после заключительной скобки выражения или вызова функции присутствуют дополнительные символы. В случае обнаружения другой ошибки функция возвращает составную величину с двумя полями. Первое поле содержит строку с текстом сообщения об ошибке (или значение FALSE, если ошибок нет). Второе поле — строка, содержащая текст предупрежде­ния (или значение FALSE, если предупреждения отсутствуют).

Определение 15.30. Функция check-syntax

(check-syntax <строка>)

Варианты использования функции check-syntax приведены в примере 15.9 и на рис. 15.9.

Пример 15.19. Использование функции check-syntax.

(check-syntax "(defrule Examplel =>)")

(check-syntax "(defrule Example2 =>) foo")

(check-syntax " defrule Examples =>)")

(check-syntax "(defrule Example4 (3) =>)")

Функция string-to-field предназначена для разбора аргумента, имеющего тип string или symbol, на отдельные поля и преобразования их к одному из примитивных типов данных CLIPS.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: