الفرق بين المراجعتين لصفحة: «Ruby/IO/foreach»
لا ملخص تعديل |
جميل-بيلوني (نقاش | مساهمات) ط مراجعة وتدقيق. |
||
سطر 1: | سطر 1: | ||
<noinclude>{{DISPLAYTITLE: التابع <code>foreach | <noinclude>{{DISPLAYTITLE: التابع <code>IO.foreach</code> في روبي}}</noinclude> | ||
[[تصنيف: Ruby]] | [[تصنيف: Ruby]] | ||
[[تصنيف: Ruby Method]] | [[تصنيف: Ruby Method]] | ||
[[تصنيف: Ruby IO]] | [[تصنيف: Ruby IO]] | ||
ينفذ التابع <code>foreach</code> الكتلة المعطاة على كل سطر في منفذ [[Ruby/IO|مجرى د/خ]] المسمى. | ينفذ التابع <code>foreach</code> الكتلة المعطاة على كل سطر في منفذ [[Ruby/IO|مجرى د/خ]] المسمى. إن كان آخر معامل مُمرَّر إلى التابع هو [[Ruby/Hash|جدول Hash]]، فسيتم فتح الوسيط المسمى (keyword argument). | ||
في حال لم تُعطَ أية كتلة، فسيُعاد كائن من الصنف <code>[[Ruby/Enumerator|Enumerator]]</code> بدلًا من ذلك. | |||
في حال لم | |||
==البنية العامة== | ==البنية العامة== | ||
<syntaxhighlight lang="ruby">foreach(name, sep=$/ [, getline_args, open_args]) {|line| block } → nil | <syntaxhighlight lang="ruby">foreach(name, sep=$/ [, getline_args, open_args]) {|line| block } → nil | ||
سطر 17: | سطر 13: | ||
==المعاملات== | ==المعاملات== | ||
===<code>name</code>=== | ===<code>name</code>=== | ||
اسم الملف | اسم الملف المراد تطبيق العملية عليه. | ||
===<code>sep</code>=== | ===<code>sep</code>=== | ||
الفاصل الذي يفصل بين الأسطر. القيمة الافتراضية هي: <code>/$</code>. | |||
===<code>getline_args</code>=== | ===<code>getline_args</code>=== | ||
مصفوفة | مصفوفة تحوي أسطر الملف. راجع صفحة <code>[[Ruby/IO/readlines|readlines]]</code> لمزيد من التفاصيل حول المعامل <code>getline_args</code>. | ||
===<code>open_args</code>=== | ===<code>open_args</code>=== | ||
مصفوفة | [[Ruby/Array|مصفوفة]] أو [[Ruby/Hash|جدول Hash]] يوفر خيارات الفتح. اطلع على صفحة التابع <code>[[Ruby/IO/read|read]]</code> لمزيد من التفاصيل حول المعامل <code>open_args</code>. | ||
===<code>limit</code>=== | ===<code>limit</code>=== | ||
الحد الأقصى للأسطر. | الحد الأقصى للأسطر. | ||
==القيمة | ==القيمة المعادة== | ||
تعاد القيمة <code>nil</code> بعد تنفيذ العملية. | |||
==أمثلة== | ==أمثلة== | ||
مثال على استخدام التابع <code>foreach</code>: | مثال على استخدام التابع <code>foreach</code>: | ||
<syntaxhighlight lang="ruby">IO.foreach("testfile") {|x| print "GOT ", x }</syntaxhighlight>الناتج:<syntaxhighlight lang=" | <syntaxhighlight lang="ruby">IO.foreach("testfile") {|x| print "GOT ", x }</syntaxhighlight>الناتج:<syntaxhighlight lang="text">GOT This is line one | ||
GOT This is line two | GOT This is line two | ||
GOT This is line three | GOT This is line three | ||
GOT And so on...</syntaxhighlight> | GOT And so on...</syntaxhighlight> | ||
==انظر | ==انظر أيضًا== | ||
* التابع <nowiki/>[[Ruby/IO/readlines|<code></code>]]<code>[[Ruby/IO/for_fd|readlines]]</code>: يقرأ أسطر الملف المعطى. | * التابع <nowiki/>[[Ruby/IO/readlines|<code></code>]]<code>[[Ruby/IO/for_fd|readlines]]</code>: يقرأ أسطر الملف المعطى. | ||
==مصادر== | ==مصادر== | ||
*[http://ruby-doc.org/core-2.5.1/IO.html#method-c-foreach قسم | *[http://ruby-doc.org/core-2.5.1/IO.html#method-c-foreach قسم التابع foreach في الصنف IO في توثيق روبي الرسمي.] |
المراجعة الحالية بتاريخ 12:05، 19 ديسمبر 2018
ينفذ التابع foreach
الكتلة المعطاة على كل سطر في منفذ مجرى د/خ المسمى. إن كان آخر معامل مُمرَّر إلى التابع هو جدول Hash، فسيتم فتح الوسيط المسمى (keyword argument).
في حال لم تُعطَ أية كتلة، فسيُعاد كائن من الصنف Enumerator
بدلًا من ذلك.
البنية العامة
foreach(name, sep=$/ [, getline_args, open_args]) {|line| block } → nil
foreach(name, limit [, getline_args, open_args]) {|line| block }→ nil
foreach(name, sep, limit [, getline_args, open_args]) {|line| block } → nil
foreach(...) → an_enumerator
المعاملات
name
اسم الملف المراد تطبيق العملية عليه.
sep
الفاصل الذي يفصل بين الأسطر. القيمة الافتراضية هي: /$
.
getline_args
مصفوفة تحوي أسطر الملف. راجع صفحة readlines
لمزيد من التفاصيل حول المعامل getline_args
.
open_args
مصفوفة أو جدول Hash يوفر خيارات الفتح. اطلع على صفحة التابع read
لمزيد من التفاصيل حول المعامل open_args
.
limit
الحد الأقصى للأسطر.
القيمة المعادة
تعاد القيمة nil
بعد تنفيذ العملية.
أمثلة
مثال على استخدام التابع foreach
:
IO.foreach("testfile") {|x| print "GOT ", x }
الناتج:
GOT This is line one
GOT This is line two
GOT This is line three
GOT And so on...
انظر أيضًا
- التابع
readlines
: يقرأ أسطر الملف المعطى.