التابع String.unicode_normalized?‎ في روبي

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

يتحقق التابع unicode_normalized?‎ إذا كانت السلسلة النصية التي استدعيت معه ذات ترميز موحَّد باستخدام أحد ترميزات يونيكود الموحدة (Unicode normalizations). يطلق التابع استثناءً إذا كانت السلسلة النصية غير مُرمّزة بترميز يونيكود.

لمزيد من التفاصيل، اطلع على صفحة التابع unicode_normalize.

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

unicode_normalized?(form=:nfc)

المعاملات

form

يحدد نمط ترميزات يونيكود الموحدة المراد التحقق منها مع السلسلة النصية المعطاة؛ ويأخذ إحدى القيم التالية:

  • nfc: (القيمة الافتراضية)
  • nfd:
  • nfkc:
  • nfkd:

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

تُعاد القيمة true إذا كانت السلسلة النصية مرمزة بأحد ترميزات يونيكود الموحدة المحدد في المعامل form، أو تُعاد القيمة false خلاف ذلك. يطلق استثناءٌ إذا كانت السلسلة النصية غير مُرمَزة بترميز اليونيكود.

أمثلة

مثال على استعمال التابع unicode_normalized?‎:

"a\u0300".unicode_normalized?        #=> false
"a\u0300".unicode_normalized?(:nfd)  #=> true
"\u00E0".unicode_normalized?         #=> true
"\u00E0".unicode_normalized?(:nfd)   #=> false
"\xE0".force_encoding('ISO-8859-1').unicode_normalized?
                                     #=> Encoding::CompatibilityError raised

انظر أيضًا

  • التابع unicode_normalize: يعيد نسخة موحدة (normalized string، أي ذات ترميز موحد) للسلسلة النصية التي استدعيت معه باستخدام أحد ترميزات يونيكود الموحدة.
  • التابع unicode_normalize!‎: يوحد ترميز السلسلة النصية التي استدعيت معه باستخدام أحد ترميزات يونيكود الموحدة.

مصادر