التابع union‎ الخاص بالصنف Regexp في روبي

من موسوعة حسوب
< Ruby‏ | Regexp
مراجعة 22:01، 31 أكتوبر 2018 بواسطة محمد-بغات (نقاش | مساهمات) (أنشأ الصفحة ب'<noinclude>{{DISPLAYTITLE: التابع <code>union‎</code> الخاص بالصنف <code>Regexp</code> في روبي}}</noinclude> تصنيف: Ruby تصني...')
(فرق) → مراجعة أقدم | المراجعة الحالية (فرق) | مراجعة أحدث ← (فرق)

يُعيد التابع union كائن من النوع Regexp، والذي يمثل اتحاد الأنماط المعطاة، أي أنه سيتطابق مع أي من أجزائه. يمكن أن تكون الأنماط كائنات من النوع Regexp، وفي هذه الحالة سيتم الاحتفاظ بخياراتها، أو يمكن أن تكون سلاسل نصية. إذا لم يتم إعطاء أية أنماط، فسيعيد التابع union القيمة /(?!)/. السلوك سيكون غير محدد إذا احتوى أيُّ من الأنماط المعطاة على التقاط (capture).

ملاحظة: ستحاول روبي تحويل وسائط ::union إلى تعبير نمطي حرفي عبر to_regexp.

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

union(pat1, pat2, ...) new_regexp
union(pats_ary)  new_regexp

المعاملات

pat1‎

pat2‎

...‎

pats_ary‎

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

أمثلة

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

Regexp.union                         #=> /(?!)/
Regexp.union("penzance")             #=> /penzance/
Regexp.union("a+b*c")                #=> /a\+b\*c/
Regexp.union("skiing", "sledding")   #=> /skiing|sledding/
Regexp.union(["skiing", "sledding"]) #=> /skiing|sledding/
Regexp.union(/dogs/, /cats/i)        #=> /(?-mix:dogs)|(?i-mx:cats)/‎

انظر أيضا

  • التابع try_convert: يُحاول تحويل الوسيط obj إلى كائن من النوع Regexp، باستخدام التابع to_regexp. ثم يعيد التعبير النمطي الناتج، أو nil في حالة تعذر تحويل obj لسبب أو لآخر.
  • التابع ==: معامل التساوي - يتساوى تعبيران نمطيان إن كان نماطهما متطابقين، وكان لهما نفس رمز مجموعة الحروف (character set code)، وكانت لهمنا نفس قيمة casefold?‎.

مصادر