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

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

يبحث التابع =~ عن تطابق للتعبير النمطي rxp (انظر فقرة البنية العامة) ضمن str.

إذا تم استخدام =~ مع تعبير نمطي حرفي له التقاطات مسماة (named captures)، تتم إحالة السلاسل الملتقطة (أوnil) على متغيرات محلية تحمل نفس أسماء الالتقاطات.

إذا لم تكن هناك مطابقة، يُعطى لتلك المتغيرات القيمة nil.

تنفذ الإحالة في محلل (parser) روبي. يرصد المحلل 'regexp-literal =~ expression' لأجل التعيين. يجب أن يكون regexp حرفيًا بدون تلقيم (interpolation)، وأن يوضع على الجانب الأيسر. لا تُنفّذ عملية التعيين إذا لم يكن التعبير النمطي حرفيًا.

تلقيم التعبير النمطي، #{}، سيلغي التعيين.

لا يحدث التعيين إن وُضع التعبير النمطي على الجانب الأيمن.

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

rxp =~ str  integer or nil

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

أمثلة

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

/at/ =~ "input data"   #=> 7
/ax/ =~ "input data"   #=> nil‎

انظر أيضا

  • التابع ===: معامل تساوي الحالة (Case Equality) - يُستخدم في العبارات case.
  • التابع casefold?‎: يعيد قيمة راية الحساسية لحالة الأحرف (case-insensitive flag).

مصادر