الفرق بين المراجعتين لصفحة: «Ruby/String/each codepoint»
جميل-بيلوني (نقاش | مساهمات) إنشاء الصفحة. هذه الصفحة من مساهمات "كريم حبال". |
جميل-بيلوني (نقاش | مساهمات) إضافة المحتوى |
||
سطر 3: | سطر 3: | ||
[[تصنيف: Ruby Method]] | [[تصنيف: Ruby Method]] | ||
[[تصنيف: Ruby String]] | [[تصنيف: Ruby String]] | ||
يعيد التابع <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
: يُمرر كل محرف من محارف السلسلة النصية التي استدعي معها إلى الكتلة المُعطاة.