التابع last_match الخاص بالصنف Regexp في روبي
يُعيد التابع last_match في الشكل الأول (انظر فقرة البنية العامة) كائنَ MatchData الذي تم إنشاؤه من آخر تطابق (match) ناجح للنمط. وهو مكافئ لقراءة المتغير العام $~ (راجع المتغيرات العامة المخصوصة في صفحة Regexp لمزيد من التفاصيل).
في الشكل الثاني، يعيد التابع last_match الحقل رقم n في الكائن MatchData. يمكن أن يكون n عبارة عن سلسلة نصية أو رمزًا للإشارة إلى الالتقاط المسمى (named capture).
لاحظ أن last_match هو متغير محلي في مدى (scope) التابع أو المهمة الفرعية (thread) للتابع الذي أنجز النمط.
البنية العامة
last_match → matchdata
last_match(n) → str
المعاملات
n
سلسلة نصية أو رمز.
القيمة المُعادة
يُعيد التابع last_match في الشكل الأول كائنَ MatchData الذي تم إنشاؤه من آخر تطابق (match) ناجح للنمط. وفي الشكل الثاني، يعيد الحقل رقم n في الكائن MatchData.
أمثلة
مثال على استخدام التابع last_match:
/c(.)t/ =~ 'cat' #=> 0
Regexp.last_match #=> #<MatchData "cat" 1:"a">
Regexp.last_match(0) #=> "cat"
Regexp.last_match(1) #=> "a"
Regexp.last_match(2) #=> nil
/(?<lhs>\w+)\s*=\s*(?<rhs>\w+)/ =~ "var = val"
Regexp.last_match #=> #<MatchData "var = val" lhs:"var" rhs:"val">
Regexp.last_match(:lhs) #=> "var"
Regexp.last_match(:rhs) #=> "val"
انظر أيضا
- التابع
match: يتحقق مما إذا كان التعبير النمطي مُطابقا أم لا.