التابع union
الخاص بالصنف Regexp
في روبي
يُعيد التابع 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?
.