التابع String.casecmp في روبي

من موسوعة حسوب
< Ruby‏ | String
مراجعة 04:35، 12 ديسمبر 2018 بواسطة جميل-بيلوني (نقاش | مساهمات) (إضافة المحتوى)
(فرق) → مراجعة أقدم | المراجعة الحالية (فرق) | مراجعة أحدث ← (فرق)

يقارن التابع casecmp بين سلسلتين نصيتين دون أخذ حالة الأحرف بالحسبان. أي هذا التابع هو النسخة الغير حساسة لحالة الأحرف من المعامل <=>. حاليًا، تشمل حالة عدم الحساسية الأحرف A-Z/a-z فقط، وليس جميع محارف الترميز Unicode، وهذا يختلف عن casecmp?‎.

البنية العامة

casecmp(other_str)  -1, 0, +1, or nil

المعاملات

other_str

السلسلة النصية المراد مقارنتها مع السلسلة النصية المُعطاة.

القيمة المعادة

تُعاد القيمة 1- إذا كانت السلسلة النصية المُعطاة أصغر من السلسلة other_str، أو1+ إذا كانت أكبر منها، أو 0 إذا كانت السلسلتان متطابقتين. ستُعاد القيمة nil في حال كان ترميز إحدى السلسلتين مختلفًا عن الأخرى، أو لم يكن المعامل other_str المعطى سلسلة نصية.

أمثلة

مثال على استخدام التابع casecmp:

"aBcDeF".casecmp("abcde")     #=> 1
"aBcDeF".casecmp("abcdef")    #=> 0
"aBcDeF".casecmp("abcdefg")   #=> -1
"abcdef".casecmp("ABCDEF")    #=> 0

انظر أيضًا

  • المعامل <=>: يُقارن بين سلسلتين نصيتين ثم يعيد القيم 1-، أو 1، أو 0، إذا ما كانت السلسلة النصية الأولى أكبر أو أصغر أو تساوي السلسلة النصية الثانية على التوالي.
  • التابع casecmp?‎: يتحقق إذا كانت السلسلة النصية التي استدعيت معه متساوية مع السلسلة المُمرَّرة إليه دون أخذ حالة المحارف بالحسبان.

مصادر