Обpобка масивiв
$ (string-upcase |This is A TEXT|)$ (string-downcase |This is A TEXT|)
|THIS IS A TEXT||this is a text|
$ (STRING-UPCASE 'i)$ (STRING-DOWNCASE 'I)
I\i
9. FINDSTRING atom1 atom2 n. Повертає номер позицiї першого входження P - iменi атома1 в P - iм'я атома2. Якщо n - ноль або додатне цiле, пошук починається з n-ого символа атома2. Якщо P - iм'я атома1 не знайдено, повертається NIL.
(DEFUN FINDSTRING (ATM1 ATM2 N)
((OR (NOT (ATOM ATM1)) (NOT (ATOM ATM2))) NIL)
((PLUSP N)
((NULL (FINDSTRING ATM1 (SUBLIST ATM2))) NIL)
(+ N (FINDSTRING ATM1 (SUBLIST ATM2 N))) )
((якщо ATM1 є пiдрядком ATM2)
(позицiя ATM1, на якiй воно вперше зустрiчається у ATM2) ) )
$ (FINDSTRING 'BC 'ABCDEFG)(FINDSTRING 'abc 'abdeabcde)
14
10. PRINT-LENGTH atom. Повертає кiлькiсть символiв в P - iменi атома з урахуванням значень контрольних змiнних *PRINT-BASE* та *PRINT-ESCAPE*.
$ (DEFUN PRINT-LENGTH (atm)
((ATOM atm) (LENGTH (UNPACK atm)))
$ (PRINT-LENGTH 'Mulisp)
6
$ (PRINT-LENGTH -156)$ (PRINT-LENGTH NIL)
43
Розглянемо функцiю, яка для заданого атома знаходить максимальну кiлькiсть лiтер, яка в ньому йде пiдряд. Повернути конс, який складається з лiтери та числа. Наприклад, для атома a22eeerty повернути (e . 3).
(DEFUN symmax (atm)$ (symmax 'a22eeerty)
((NOT (ATOM atm)) NIL)(e . 3)