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