T: bagaimana cara seseorang menguji kesetaraan string tetapi mengabaikan case?
Saya punya situasi di mana saya ingin membandingkan string tetapi abaikan case. Kasus penting untuk string-equal, dan tampaknya tidak peka terhadap case-fold-search:
(string-equal "string" "StrinG") ; => nil
(let ((case-fold-search t))
(string-equal "string" "StrinG")) ; => nil
Saya selalu bisa memproses terlebih dahulu string (katakanlah, dengan downcase) sebelum membandingkannya:
(string-equal (downcase "string")
(downcase "StrinG")) ; => t
Tapi itu sepertinya terlalu banyak melakukan dua panggilan fungsi ekstra setiap waktu. Sudahkah saya mengabaikan fungsi predikat yang relevan di suatu tempat?