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

من موسوعة حسوب
< Ruby‏ | String
إنشاء الصفحة. هذه الصفحة من مساهمات "كريم حبال".
 
لا ملخص تعديل
 
سطر 3: سطر 3:
[[تصنيف: Ruby Method]]
[[تصنيف: Ruby Method]]
[[تصنيف: Ruby String]]
[[تصنيف: Ruby String]]
يعيد التابع <code>next</code> ب
يعيد التابع <code>next</code> السلسلة النصية اللاحقة للسلسلة النصية التي استدعي معها.
 
تُحسّب السلسلة النصية اللاحقة عبر زيادة المحارف بدءًا من العدد الواقع في أقصى اليمين (أو المحرف الواقع في أقصى اليمين إن لم يكن عددًا) في السلسلة النصية المعطاة. زيادة عدد يؤدي دومًا إلى توليد عدد آخر، ولكن زيادة حرف يَنتُج عنه حرفٌ آخر من نفس الحالة. أمَّا زيادة محرف (أي ليس حرفًا أبجديًّا وليس عددًا)، فسيُستعمَل آنذاك مجموعة المحارف الأساسية المتسلسلة.
 
إن ولدت عملية الزيادة «حملًا» (مثل زيادة العدد 9 يولد 0 والحمل 1)، فسيضاف إلى المحرف المجاور للمحرف المُزَاد من الطرف الأيسر. تُكرَّر هذه العملية حتى جمع الحمل وعدم توليد حمل آخر، مع إضافة المحارف الزائدة إن كان ذلك ضروريًّا.
==البنية العامة==
==البنية العامة==
<syntaxhighlight lang="ruby">next → new_str</syntaxhighlight>
<syntaxhighlight lang="ruby">next → new_str</syntaxhighlight>


==القيمة المعادة==
==القيمة المعادة==
يعاد
تعاد سلسلة نصية تمثِّل السلسلة النصية اللاحقة لتلك المعطاة.


==أمثلة==
==أمثلة==
سطر 19: سطر 23:
"***".succ        #=> "**+"</syntaxhighlight>
"***".succ        #=> "**+"</syntaxhighlight>


==انظر أيضا==
==انظر أيضًا==
* التابع <code>[[Ruby/String/chomp|chomp]]</code>: يعيد نسخة عن السلسلة النصية مع حذف الفاصل السطري المُحدد من نهايتها (إن كان موجودًا).
 
* التابع <code>[[Ruby/String/next-21|next!‎]]</code>: يشبه التابع <code>next</code> تمامًا باستثناء أنه يعدل على السلسلة النصية التي تُستدعَى معه.
* التابع <code>[[Ruby/String/prepend|prepend]]</code>: يُلحق السلسلة النصية المُمرَّرة إليه ببداية السلسلة النصية التي استدعيت معه.


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

المراجعة الحالية بتاريخ 11:19، 26 مارس 2019

يعيد التابع next السلسلة النصية اللاحقة للسلسلة النصية التي استدعي معها.

تُحسّب السلسلة النصية اللاحقة عبر زيادة المحارف بدءًا من العدد الواقع في أقصى اليمين (أو المحرف الواقع في أقصى اليمين إن لم يكن عددًا) في السلسلة النصية المعطاة. زيادة عدد يؤدي دومًا إلى توليد عدد آخر، ولكن زيادة حرف يَنتُج عنه حرفٌ آخر من نفس الحالة. أمَّا زيادة محرف (أي ليس حرفًا أبجديًّا وليس عددًا)، فسيُستعمَل آنذاك مجموعة المحارف الأساسية المتسلسلة.

إن ولدت عملية الزيادة «حملًا» (مثل زيادة العدد 9 يولد 0 والحمل 1)، فسيضاف إلى المحرف المجاور للمحرف المُزَاد من الطرف الأيسر. تُكرَّر هذه العملية حتى جمع الحمل وعدم توليد حمل آخر، مع إضافة المحارف الزائدة إن كان ذلك ضروريًّا.

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

next  new_str

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

تعاد سلسلة نصية تمثِّل السلسلة النصية اللاحقة لتلك المعطاة.

أمثلة

مثال على استعمال التابع next:

"abcd".succ        #=> "abce"
"THX1138".succ     #=> "THX1139"
"<<koala>>".succ   #=> "<<koalb>>"
"1999zzz".succ     #=> "2000aaa"
"ZZZ9999".succ     #=> "AAAA0000"
"***".succ         #=> "**+"

انظر أيضًا

  • التابع chomp: يعيد نسخة عن السلسلة النصية مع حذف الفاصل السطري المُحدد من نهايتها (إن كان موجودًا).
  • التابع next!‎: يشبه التابع next تمامًا باستثناء أنه يعدل على السلسلة النصية التي تُستدعَى معه.
  • التابع prepend: يُلحق السلسلة النصية المُمرَّرة إليه ببداية السلسلة النصية التي استدعيت معه.

مصادر