|
SketchyLISP Reference |
Copyright (C) 2007 Nils M Holm |
| <<[string-ci<=?] | [Index] | [string-ci>?]>> |
Conformance: R5RS Scheme
Purpose: Case-insensitively test whether all strings in a sequence are equal.
Arguments:
X - string
Y... - strings
Implementation:
(define string-ci=?
(letrec
((ci-eq?
(lambda (x y)
(cond ((null? x) (null? y))
((null? y) #f)
(else (and (char-ci=? (car x) (car y))
(ci-eq? (cdr x) (cdr y))))))))
(predicate-iterator
(lambda (x y)
(ci-eq? (string->list x)
(string->list y))))))
Example:
(string-ci=? "xyz" "XYZ" "xYz") => #t
See also:
string=?,
string-ci<?,
string-ci>?,
string-ci<=?,
string-ci>=?,
char-ci=?,
equal?.
| <<[string-ci<=?] | [Index] | [string-ci>?]>> |