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

من موسوعة حسوب
< Ruby‏ | Kernel
أنشأ الصفحة ب'<noinclude>{{DISPLAYTITLE: التابع <code>gets‎</code> الخاص بالصنف <code>Kernel</code> في روبي}}</noinclude> تصنيف: Ruby تصنيف...'
 
لا ملخص تعديل
سطر 3: سطر 3:
[[تصنيف: Ruby Method]]
[[تصنيف: Ruby Method]]
[[تصنيف: Ruby Kernel]]
[[تصنيف: Ruby Kernel]]
يعيد التابع (ويُحيل على <code>$_</code>) السطر الموالي من قائمة الملفات في <code>ARGV</code> (أو <code>$*</code>)، أو من مجرى الإدخال القياسي في حالة عدم تمرير أي ملفات في سطر الأوامر. ويعيد <code>nil</code> في نهاية الملف. يحدد الوسيط الاختياري فاصل السجل. يتم تضمين الفاصل مع محتويات كل سجل. قي حال كان الوسيط sep يساوي <code>nil</code> فسيقرأ التابع gets كامل المحتوى، أما إذا كان الفاصل معدوم الطول (zero-length) فسيقرأ فقرة واحدة في كل مرة من المدخلات، بحيث تكون الفقرات مقسمة بواسطة سطرين جديدين متتاليين .  إذا كان الوسيط الأول عددًا صحيحًا أو في حالإعطاء الوسيط الثاني الاختياري، فإنّ السلسلة النصية المعادة لن تكون أطول من القيمة المحددة من حيث عدد البتات (bytes).  في حال تمرير عدة أسماء ملفات إلى <code>ARGV</code> ، فسيقرأ <code>gets(nil)</code> محتويات الملفات، واحدًا في كل مرة.
يعيد التابع <code>gets</code> (ويُحيل على <code>$_‎</code>) السطر الموالي من قائمة الملفات في المجرى <code>ARGV</code> (أو <code>$‎‎*</code>)، أو من مجرى الإدخال القياسي في حالة عدم تمرير أي ملفات في سطر الأوامر. ويعيد <code>nil</code> عند نهاية الملف.  


الناتج:
يحدد الوسيط الاختياري <code>sep</code> فاصل السجل. يتم تضمين الفاصل مع محتويات كل سجل. قي حال كان الوسيط <code>sep</code> يساوي <code>nil</code> فسيقرأ التابع <code>gets</code> كامل المحتوى، أما إذا كان الفاصل معدوم الطول (zero-length)، فسيقرأ فقرة واحدة في كل مرة من المدخلات، بحيث تكون الفقرات مقسمة بسطرين جديدين متتاليين. إذا كان الوسيط الأول عددًا صحيحًا، أو في حال تمرير الوسيط الثاني الاختياري، فإنّ السلسلة النصية المعادة لن تكون أطول من القيمة المحددة من حيث عدد البتات (bytes).  في حال تمرير عدة أسماء ملفات إلى <code>ARGV</code> ، فسيقرأ <code>gets(nil)‎</code> محتويات الملفات، واحدًا في كل مرة.
<syntaxhighlight lang="ruby">This is line one
 
This is line two
أسلوب البرمجة الذي يستخدم <code>$_‎</code> كوسيط ضمني صار استخدامه أقل شيوعًا في مجتمع روبي.
This is line three
And so on...‎</syntaxhighlight>
أسلوب البرمجة الذي يستخدم <code>$_</code> كوسيط ضمني صار أقل شيوعًا في مجتمع روبي.
==البنية العامة==
==البنية العامة==
<syntaxhighlight lang="ruby">gets(sep=$/ [, getline_args])  → string or nil
<syntaxhighlight lang="ruby">gets(sep=$/ [, getline_args])  → string or nil
سطر 17: سطر 14:
==المعاملات==
==المعاملات==
===<code>sep‎</code>===
===<code>sep‎</code>===
يمثل الفاصل


===<code>getline_args‎</code>===
===<code>getline_args‎</code>===
يحتوي أسماء الملفات.


===<code>limit‎</code>===
===<code>limit‎</code>===


 
يحدد الطول الأقصى للسلسلة النصية المعادة.
==القيمة المُعادة==
==القيمة المُعادة==
يعيد التابع <code>gets</code>السطر الموالي من قائمة الملفات في المجرى <code>ARGV</code> (أو ‎<code>$‎‎*‎</code>)، أو من مجرى الإدخال القياسي في حالة عدم تمرير أي ملفات في سطر الأوامر. ويعيد <code>nil</code> عند نهاية الملف.


==أمثلة==
==أمثلة==
مثال على استخدام التابع <code>gets‎</code>:
مثال على استخدام التابع <code>gets‎</code>:
<syntaxhighlight lang="ruby">ARGV << "testfile"
<syntaxhighlight lang="ruby">ARGV << "testfile"
print while gets
print while gets</syntaxhighlight>الناتج:<syntaxhighlight lang="ruby">This is line one
‎</syntaxhighlight>
This is line two
This is line three
And so on...‎</syntaxhighlight>
==انظر أيضا==
==انظر أيضا==
* التابع <code>[[Ruby/Kernel/format|format]]</code>: يعيد التابع السلسلة النصية الناتجة من تطبيق format_string على أي وسائط إضافية.  داخل السلسلة النصية format_string، ستُنسخ كل الأحرف في النتيجة باستثناء تسلسلات التنسيق (format sequences).
* التابع <code>[[Ruby/Kernel/global_variables|global_variables]]</code>: يعيد التابع global_variables مصفوفة تضم أسماء المتغيرات الكلية (global variables).
* التابع <code>[[Ruby/Kernel/global_variables|global_variables]]</code>: يعيد التابع global_variables مصفوفة تضم أسماء المتغيرات الكلية (global variables).


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

مراجعة 10:12، 22 أكتوبر 2018

يعيد التابع gets (ويُحيل على ‎$_‎) السطر الموالي من قائمة الملفات في المجرى ARGV (أو ‎$‎‎*‎)، أو من مجرى الإدخال القياسي في حالة عدم تمرير أي ملفات في سطر الأوامر. ويعيد nil عند نهاية الملف.

يحدد الوسيط الاختياري sep فاصل السجل. يتم تضمين الفاصل مع محتويات كل سجل. قي حال كان الوسيط sep يساوي nil فسيقرأ التابع gets كامل المحتوى، أما إذا كان الفاصل معدوم الطول (zero-length)، فسيقرأ فقرة واحدة في كل مرة من المدخلات، بحيث تكون الفقرات مقسمة بسطرين جديدين متتاليين. إذا كان الوسيط الأول عددًا صحيحًا، أو في حال تمرير الوسيط الثاني الاختياري، فإنّ السلسلة النصية المعادة لن تكون أطول من القيمة المحددة من حيث عدد البتات (bytes). في حال تمرير عدة أسماء ملفات إلى ARGV ، فسيقرأ gets(nil)‎ محتويات الملفات، واحدًا في كل مرة.

أسلوب البرمجة الذي يستخدم ‎$_‎ كوسيط ضمني صار استخدامه أقل شيوعًا في مجتمع روبي.

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

gets(sep=$/ [, getline_args])   string or nil
gets(limit [, getline_args]) string or nil
gets(sep, limit [, getline_args])  string or nil

المعاملات

sep‎

يمثل الفاصل

getline_args‎

يحتوي أسماء الملفات.

limit‎

يحدد الطول الأقصى للسلسلة النصية المعادة.

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

يعيد التابع getsالسطر الموالي من قائمة الملفات في المجرى ARGV (أو ‎$‎‎*‎)، أو من مجرى الإدخال القياسي في حالة عدم تمرير أي ملفات في سطر الأوامر. ويعيد nil عند نهاية الملف.

أمثلة

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

ARGV << "testfile"
print while gets

الناتج:

This is line one
This is line two
This is line three
And so on...

انظر أيضا

  • التابع global_variables: يعيد التابع global_variables مصفوفة تضم أسماء المتغيرات الكلية (global variables).

مصادر