اذهب إلى المحتوى
  • 0

ما الفرق بين دالة search() وmatch() في بايثون؟

ali_agha

السؤال

Recommended Posts

  • 0

على الرغم من أن كلا الدالتين تُستخدمان للبحث داخل السلسلة النصية إلا أنه هنالك فرق بسيط بينهما، فدالة re.match تستخدم للبحث في بداية السلسلة النصية، وهذه الدالة لا تفعل أي شيئ للأسطر الجديدة ولذلك فهي ليست مشابهة لـ ^ عند استخدام التعابير النمطية.
أما بالنسبة لـ re.search فهي تُستخدم للبحث في كامل السلسلة النصيّة وإرجاع موقع الكلمة/ الكلمات التي تبحث عنها.
لتوضيح الفرق بشكلٍ أفضل، أنصحك بإلقاء نظرة على هذه الأسطر:

a = "123abc"
t = re.match("[a-z]+",a)
t = re.search("[a-z]+",a)

بالنسبة إلى re.match فإنها ستقوم بإرجاع سلسلة فارغة وأما re.search فإنها ستقوم بإرجاع abc.
المصدر

رابط هذا التعليق
شارك على الشبكات الإجتماعية

انضم إلى النقاش

يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.

زائر
أجب على هذا السؤال...

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   جرى استعادة المحتوى السابق..   امسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

  • إعلانات

  • تابعنا على



×
×
  • أضف...