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

من موسوعة حسوب
< Ruby‏ | String
إنشاء الصفحة. هذه الصفحة من مساهمات "كريم حبال".
 
 
(1 مراجعات متوسطة بواسطة نفس المستخدم غير معروضة)
سطر 3: سطر 3:
[[تصنيف: Ruby Method]]
[[تصنيف: Ruby Method]]
[[تصنيف: Ruby String]]
[[تصنيف: Ruby String]]
يعيد التابع <code>partition</code> ب
يبحث التابع <code>partition</code> عن تطابق نص أو نمط محدد ضمن السلسلة النصية التي استدعي معها. فإذا عثر التابع على تطابق، فإنه يعيد مصفوفة تحوي الجزء الذي يسبقه، والجزء المتطابق، والجزء الذي يليه على التوالي.
 
إذا لم يعثر التابع على تطابق؛، فإنه يعيد مصفوفة من السلسلة النصية المعطاة وسلسلتين فارغتين بعدها على التوالي.
 
==البنية العامة==
==البنية العامة==
<syntaxhighlight lang="ruby">partition(sep) → [head, sep, tail]
<syntaxhighlight lang="ruby">partition(sep) → [head, sep, tail]
partition(regexp) → [head, match, tail]</syntaxhighlight>
partition(regexp) → [head, match, tail]</syntaxhighlight>
== المعاملات ==
=== <code>sep</code> ===
[[Ruby/String|السلسلة النصية]] المُراد البحث عن تطابق لها ضمن السلسلة النصية المُعطاة.
=== <code>regexp</code> ===
[[Ruby/Regexp|التعبير النمطي]] المراد البحث عن تطابق له ضمن السلسلة المُعطاة.


==القيمة المعادة==
==القيمة المعادة==
يعاد
تُعاد [[Ruby/Array|مصفوفة]] تحوي الجزء الذي يسبق الجزء المتطابق، والجزء المتطابق نفسه، والجزء الذي يليه على التوالي.
 
فى حال عدم العثور على تطابق، تُعاد مصفوفة من السلسلة النصية المعطاة وسلسلتين فارغتين بعدها على التوالي.


==أمثلة==
==أمثلة==
سطر 17: سطر 30:
"hello".partition(/.l/)        #=> ["h", "el", "lo"]</syntaxhighlight>
"hello".partition(/.l/)        #=> ["h", "el", "lo"]</syntaxhighlight>


==انظر أيضا==
==انظر أيضًا==
* التابع <code>[[Ruby/String/include-3F|include?‎]]</code>: يتحقق إذا كانت السلسلة النصية التي استدعيت معها تحتوي على السلسلة النصية أو المحرف المُمرَّر إليها.
 
* التابع <code>[[Ruby/String/index|index]]</code>: يبحث عن سلسلة أو نمط مُحدد ضمن السلسلة النصية التي استدعيت معها، ثم يُعيد فهرس أول تطابق يعثر عليه.


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

المراجعة الحالية بتاريخ 13:19، 12 ديسمبر 2018

يبحث التابع partition عن تطابق نص أو نمط محدد ضمن السلسلة النصية التي استدعي معها. فإذا عثر التابع على تطابق، فإنه يعيد مصفوفة تحوي الجزء الذي يسبقه، والجزء المتطابق، والجزء الذي يليه على التوالي.

إذا لم يعثر التابع على تطابق؛، فإنه يعيد مصفوفة من السلسلة النصية المعطاة وسلسلتين فارغتين بعدها على التوالي.

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

partition(sep)  [head, sep, tail]
partition(regexp)  [head, match, tail]

المعاملات

sep

السلسلة النصية المُراد البحث عن تطابق لها ضمن السلسلة النصية المُعطاة.

regexp

التعبير النمطي المراد البحث عن تطابق له ضمن السلسلة المُعطاة.

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

تُعاد مصفوفة تحوي الجزء الذي يسبق الجزء المتطابق، والجزء المتطابق نفسه، والجزء الذي يليه على التوالي.

فى حال عدم العثور على تطابق، تُعاد مصفوفة من السلسلة النصية المعطاة وسلسلتين فارغتين بعدها على التوالي.

أمثلة

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

"hello".partition("l")         #=> ["he", "l", "lo"]
"hello".partition("x")         #=> ["hello", "", ""]
"hello".partition(/.l/)        #=> ["h", "el", "lo"]

انظر أيضًا

  • التابع include?‎: يتحقق إذا كانت السلسلة النصية التي استدعيت معها تحتوي على السلسلة النصية أو المحرف المُمرَّر إليها.
  • التابع index: يبحث عن سلسلة أو نمط مُحدد ضمن السلسلة النصية التي استدعيت معها، ثم يُعيد فهرس أول تطابق يعثر عليه.

مصادر