الفرق بين المراجعتين ل"Ruby/ARGF/each line"

من موسوعة حسوب
< Ruby‏ | ARGF
اذهب إلى التنقل اذهب إلى البحث
ط (مراجعة وتدقيق.)
 
سطر 3: سطر 3:
 
[[تصنيف: Ruby Method]]
 
[[تصنيف: Ruby Method]]
 
[[تصنيف: Ruby ARGF]]
 
[[تصنيف: Ruby ARGF]]
يعيد التابع <code>each_line</code> قيمة قابلة للعد (<code>enumerator</code>) تتكرر (iterates) عبر كل سطر (الذي يفصل بالفاصلة الممرَّرة) من كل ملف من الملفات الموجودة في <code>ARGV</code>. في حال تمرير كتلة برمجية للتابع <code>each_line</code>، فسيُمرّر كل سطر بدوره إلى تلك الكتلة، وإلا فستعاد قيمة قابلة للعد (<code>enumerator</code>).
+
يعيد التابع <code>each_line</code> قيمة قابلة للعد (enumerator) تتكرر (iterates) عبر كل سطر (الذي يفصل بالفاصلة الممرَّرة) من كل ملف من الملفات الموجودة في <code>ARGV</code>. في حال تمرير كتلة برمجية للتابع <code>each_line</code>، فسيُمرّر كل سطر بدوره إلى تلك الكتلة، وإلا فستعاد قيمة قابلة للعد (enumerator).
  
يسمح لك هذا التابع بمعالجة الملفات المُمرَّرة من سطر الأوامر كما لو كانت ملفًا واحدًا مكونًا من سلسلة من هذه الملفات المسماة. بعد إعادة السطر الأخير من الملف الأول، سيُعاد السطر الأول من الملف الثاني. يمكن استخدام التابعيْن  <code>ARGF.[[Ruby/ARGF/filename |filename]]</code> و <code>ARGF.[[Ruby/ARGF/lineno |lineno]]</code> لمعرفة اسم الملف ورقم السطر، على التوالي، للسطر الحالي.
+
يسمح لك هذا التابع بمعالجة الملفات المُمرَّرة من سطر الأوامر كما لو كانت ملفًا واحدًا مكونًا من سلسلة من هذه الملفات المسماة. بعد إعادة السطر الأخير من الملف الأول، سيُعاد السطر الأول من الملف الثاني. يمكن استخدام التابعيْن  <code>[[Ruby/ARGF/filename |ARGF.filename]]</code> و <code>[[Ruby/ARGF/lineno |ARGF.lineno]]</code> لمعرفة اسم الملف ورقم السطر، على التوالي، للسطر الحالي.
 
==البنية العامة==
 
==البنية العامة==
<syntaxhighlight lang="ruby"> each_line(sep=$/) {|line| block } → ARGF
+
<syntaxhighlight lang="ruby">each_line(sep=$/) {|line| block } → ARGF
 
each_line(sep=$/, limit) {|line| block } → ARGF
 
each_line(sep=$/, limit) {|line| block } → ARGF
 
each_line(...) → an_enumerator
 
each_line(...) → an_enumerator
سطر 19: سطر 19:
 
عدد صحيح يحدد الحد الأقصى لطول كل سطر، وستُقسَم السطور الطويلة التي تزيد عن هذا الحد وفقًا للقيمة <code>limit</code> المعطاة.
 
عدد صحيح يحدد الحد الأقصى لطول كل سطر، وستُقسَم السطور الطويلة التي تزيد عن هذا الحد وفقًا للقيمة <code>limit</code> المعطاة.
 
==القيم المعادة==
 
==القيم المعادة==
تعاد قيمة قابلة للعد (<code>enumerator</code>) أو يعاد المجرى <code>ARGF</code>
+
تعاد قيمة قابلة للعد (enumerator) أو يعاد المجرى <code>ARGF</code>.
 
==أمثلة==
 
==أمثلة==
 
تطبع الشيفرة التالية كل سطر من كل ملف مسبوق برقمه، مع عرض اسم الملف مرة واحدة لكل ملف:
 
تطبع الشيفرة التالية كل سطر من كل ملف مسبوق برقمه، مع عرض اسم الملف مرة واحدة لكل ملف:
<syntaxhighlight lang="ruby">  
+
<syntaxhighlight lang="ruby">ARGF.each_line do |line|
 
 
ARGF.each_line do |line|
 
 
  puts ARGF.filename if ARGF.lineno == 1
 
  puts ARGF.filename if ARGF.lineno == 1
 
  puts "#{ARGF.lineno}: #{line}"
 
  puts "#{ARGF.lineno}: #{line}"
سطر 30: سطر 28:
 
  </syntaxhighlight>
 
  </syntaxhighlight>
 
==انظر أيضًا==
 
==انظر أيضًا==
* التابع [[Ruby/ARGF/filename | <code>filename</code>]]: يعيد اسم الملف الحالي.
+
* التابع<nowiki/>[[Ruby/ARGF/filename | <code>filename</code>]]: يعيد اسم الملف الحالي.
* التابع [[Ruby/ARGF/lineno | <code>lineno</code>]]: يجلب رقم السطر الحالي للمجرى <code>ARGF</code> ككُل.
+
* التابع<nowiki/>[[Ruby/ARGF/lineno | <code>lineno</code>]]: يجلب رقم السطر الحالي للمجرى <code>ARGF</code> ككُل.
 
==مصادر==
 
==مصادر==
 
* [http://ruby-doc.org/core-2.5.1/ARGF.html#method-i-each_line قسم التابع each_line في الصنف ARGF في توثيق روبي الرسمي.]
 
* [http://ruby-doc.org/core-2.5.1/ARGF.html#method-i-each_line قسم التابع each_line في الصنف ARGF في توثيق روبي الرسمي.]

المراجعة الحالية بتاريخ 12:00، 3 أكتوبر 2018

يعيد التابع each_line قيمة قابلة للعد (enumerator) تتكرر (iterates) عبر كل سطر (الذي يفصل بالفاصلة الممرَّرة) من كل ملف من الملفات الموجودة في ARGV. في حال تمرير كتلة برمجية للتابع each_line، فسيُمرّر كل سطر بدوره إلى تلك الكتلة، وإلا فستعاد قيمة قابلة للعد (enumerator).

يسمح لك هذا التابع بمعالجة الملفات المُمرَّرة من سطر الأوامر كما لو كانت ملفًا واحدًا مكونًا من سلسلة من هذه الملفات المسماة. بعد إعادة السطر الأخير من الملف الأول، سيُعاد السطر الأول من الملف الثاني. يمكن استخدام التابعيْن ARGF.filename و ARGF.lineno لمعرفة اسم الملف ورقم السطر، على التوالي، للسطر الحالي.

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

each_line(sep=$/) {|line| block }  ARGF
each_line(sep=$/, limit) {|line| block }  ARGF
each_line(...)  an_enumerator

المعاملات

sep

محرف السطر الجديد المستعمل في فصل الأسطر عن بعضها بعضًا. قيمته الافتراضية هي محرف السطر الجديد المستعمل في المنصة المستخدمة آنذاك.

limit

عدد صحيح يحدد الحد الأقصى لطول كل سطر، وستُقسَم السطور الطويلة التي تزيد عن هذا الحد وفقًا للقيمة limit المعطاة.

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

تعاد قيمة قابلة للعد (enumerator) أو يعاد المجرى ARGF.

أمثلة

تطبع الشيفرة التالية كل سطر من كل ملف مسبوق برقمه، مع عرض اسم الملف مرة واحدة لكل ملف:

ARGF.each_line do |line|
 puts ARGF.filename if ARGF.lineno == 1
 puts "#{ARGF.lineno}: #{line}"
end

انظر أيضًا

  • التابع filename: يعيد اسم الملف الحالي.
  • التابع lineno: يجلب رقم السطر الحالي للمجرى ARGF ككُل.

مصادر