الفرق بين المراجعتين لصفحة: «Ruby/String/each codepoint»

من موسوعة حسوب
< Ruby‏ | String
إنشاء الصفحة. هذه الصفحة من مساهمات "كريم حبال".
 
إضافة المحتوى
 
سطر 3: سطر 3:
[[تصنيف: Ruby Method]]
[[تصنيف: Ruby Method]]
[[تصنيف: Ruby String]]
[[تصنيف: Ruby String]]
يعيد التابع <code>each_codepoint</code> ب
يُمرر التابع <code>each_codepoint</code> كل عدد من الأعداد الترتيبية (Integers ordinal، وتُعرف أيضًا باسم "نقاط الترميز" [codepoints] في السلاسل النصية المرمزة بالترميز الموحد [Unicode]) المقابلة لكل محرف من محارف السلسلة النصية المعطاة إلى الكتلة المرتبطة به ثم يعيد الناتج الذي تعيده هذه الكتلة.
 
إذا كان ترميز السلسلة غير الترميزات التالية: UTF-8، أو (UTF-16(BE|LE، أو (UTF-32(BE|LE، فإن القيم تُؤخذ مباشرةً من الترميز الثنائي لكل محرف.
 
في حال عدم وجود كتلة، فسيعيد التابع كائنًا من النوع <code>[[Ruby/Enumerator|enumerator]]</code>.
 
==البنية العامة==
==البنية العامة==
<syntaxhighlight lang="ruby">each_codepoint {|integer| block } → str
<syntaxhighlight lang="ruby">each_codepoint {|integer| block } → str
سطر 9: سطر 14:


==القيمة المعادة==
==القيمة المعادة==
يعاد
تُعاد السلسلة النصية التي تعيدها الكتلة <code>block</code> بعد تمرير نقاط الترميز المقابلة لمحارف السلسلة النصية إليها، أو يُعاد كائن من النوع <code>[[Ruby/Enumerator|enumerator]]</code> في حال عدم وجود كتلة.


==أمثلة==
==أمثلة==
مثال على استخدام التابع <code>each_codepoint</code>:
مثال على استخدام التابع <code>each_codepoint</code>:
<syntaxhighlight lang="ruby">"hello\u0639".each_codepoint {|c| print c, ' ' }</syntaxhighlight>
<syntaxhighlight lang="ruby">"hello\u0639".each_codepoint {|c| print c, ' ' }</syntaxhighlight>ناتج تنفيذ هذا السطر من الشيفرة هو:<syntaxhighlight lang="ruby">
==انظر أيضا==
104 101 108 108 111 1593
</syntaxhighlight>
 
==انظر أيضًا==
* التابع <code>[[Ruby/String/codepoints|codepoints]]</code>: يُعيد نقاط الترميز المقابلة لمحارف السلسلة النصية في مصفوفة.
 
* التابع <code>[[Ruby/String/each byte|each_byte]]</code>: يُمرر كل بايت من بايتات السلسلة النصية التي استدعي معها إلى الكتلة المُعطاة.
* التابع <code>[[Ruby/String/each char|each_char]]</code>: يُمرر كل محرف من محارف السلسلة النصية التي استدعي معها إلى الكتلة المُعطاة.


==مصادر==
==مصادر==
*[http://ruby-doc.org/core-2.5.1/String.html#method-i-each_codepoint قسم التابع ‎each_codepoint في الصنف String في توثيق روبي الرسمي.]
*[http://ruby-doc.org/core-2.5.1/String.html#method-i-each_codepoint قسم التابع ‎each_codepoint في الصنف String في توثيق روبي الرسمي.]

المراجعة الحالية بتاريخ 09:00، 12 ديسمبر 2018

يُمرر التابع each_codepoint كل عدد من الأعداد الترتيبية (Integers ordinal، وتُعرف أيضًا باسم "نقاط الترميز" [codepoints] في السلاسل النصية المرمزة بالترميز الموحد [Unicode]) المقابلة لكل محرف من محارف السلسلة النصية المعطاة إلى الكتلة المرتبطة به ثم يعيد الناتج الذي تعيده هذه الكتلة.

إذا كان ترميز السلسلة غير الترميزات التالية: UTF-8، أو (UTF-16(BE|LE، أو (UTF-32(BE|LE، فإن القيم تُؤخذ مباشرةً من الترميز الثنائي لكل محرف.

في حال عدم وجود كتلة، فسيعيد التابع كائنًا من النوع enumerator.

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

each_codepoint {|integer| block }  str
each_codepoint  an_enumerator

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

تُعاد السلسلة النصية التي تعيدها الكتلة block بعد تمرير نقاط الترميز المقابلة لمحارف السلسلة النصية إليها، أو يُعاد كائن من النوع enumerator في حال عدم وجود كتلة.

أمثلة

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

"hello\u0639".each_codepoint {|c| print c, ' ' }

ناتج تنفيذ هذا السطر من الشيفرة هو:

104 101 108 108 111 1593

انظر أيضًا

  • التابع codepoints: يُعيد نقاط الترميز المقابلة لمحارف السلسلة النصية في مصفوفة.
  • التابع each_byte: يُمرر كل بايت من بايتات السلسلة النصية التي استدعي معها إلى الكتلة المُعطاة.
  • التابع each_char: يُمرر كل محرف من محارف السلسلة النصية التي استدعي معها إلى الكتلة المُعطاة.

مصادر