دالة ()rfind في بايثون
تقوم دالة ()rfind بإرجاع رقم فهرس آخر ظهور لسلسلة فرعية ( نص عادي ) في السلسلة المحددة (حساسة لحالة الأحرف). إذا لم يتم العثور على السلسلة الفرعية فإنها ترجع -1. الفرق بينها و بين الدالة ()find أنها تبدأ عملية البحث من آخر فهرس في النص المراد البحث عنه إلى أول فهرس فيه.
طريقة صياغتها بهذا الشكل:
string.rfind(sub, start, end)
المعلمات ( الباراميترات ) :
- السلسلة الفرعية ( substring ) : ( مطلوب) سلسلة فرعية يجب البحث عنها في السلسلة المحددة.
- البداية ( start ) : ( اختياري ) موضع البداية حيث يلزم فحص السلسلة الفرعية داخل السلسلة .
- النهاية ( end ) : ( اختياري ) فهرس النهاية ضمن السلسلة التي ينتهي بها البحث. الافتراضي هو نهاية السلسلة
قيمة الإرجاع: تقوم دالة ()rfind بإرجاع عدد صحيح لرقم فهرس آخر ظهور لسلسلة فرعية ( نص عادي ) في السلسلة المحددة. إذا لم يتم العثور على السلسلة الفرعية فإنها ترجع -1.
سنقوم بإستخدام دالة ()rfind بدون المعلمات ( الباراميترات ) الاختيارية ( start ) و ( end ). سنستخدم فقط معلمة السلسة الفرعية ( substring ) للبحث عن رقم فهرس آخر ظهور لسلسلة فرعية في السلسلة المحددة.
في المثال التالي سنقوم بالبحث عن رقم فهرس آخر ظهور لسلسلة الفرعية ( substring ) المتمثلة في كلمة ( python),
مثال:
# السلسلة التي سيتم البحث فيها
string = "learn python With ahmed obaid"
# البحث في السلسلة المحددة عن رقم فهرس آخر ظهور للسلسلة الفرعية وإرجاع عدد صحيح
print(string.rfind("python"))
سيكون الناتج:
6
في المثال التالي سنقوم بإستحدام دالة ()rfind مع المعلمات ( الباراميترات ) الاختيارية ( start ) و ( end ).
مثال:
# السلسلة التي سيتم البحث فيها
string = "learn python With ahmed obaid"
# البحث في السلسلة المحددة عن رقم فهرس آخر ظهور للسلسلة الفرعية وإرجاع عدد صحيح
# مع الإشارة إلى أننا بدأنا عملية البحث من الفهرس رقم 2
print(string.rfind("aid", 2))
# البحث في السلسلة المحددة عن رقم فهرس آخر ظهور للسلسلة الفرعية وإرجاع عدد صحيح
# مع الإشارة إلى أننا بدأنا عملية البحث من الفهرس رقم 0 الي فهرس النهاية رقم 10
print(string.rfin("learn", 0, 10))
# البحث في السلسلة المحددة عن رقم فهرس آخر ظهور للسلسلة الفرعية وإرجاع عدد صحيح
# مع الإشارة إلى أننا بدأنا عملية البحث من الفهرس رقم 2 اليي فهرس النهاية رقم 30
print(string.rfind("obaid", 10, 30))
سيكون الناتج:
26
0
24
مصادر خارجية:
الدوال المضمنة - وثائق بايثون الرسمية
أذا كان لديك أي اسئلة أو استفسارات اتركها في التعليقات
الكلمات الدلالية
بايثون أنواع البيانات في بايثون السلاسل في بايثون الدوال التي تتعامل مع السلاسل دوال البحث في السلاسل النصية في بايثون دالة ()rfind
شارك المقال
عن الكاتب
أحمدُ عُبَيْد
مرحباً، أنا أحمد عبيد مبرمج عربي مصري. أود أن أضع تجاربي وخبراتي في تعلم بايثون على هذا الموقع حتى يكون مرجعاً لي ولكم أيضاً.
عفواً..قم بتسجيل الدخول اولاً..حتي تستطيع التعليق