البحث عن كلمة في سلسلة هي واحدة من المهام الرئيسية عند العمل مع المعلومات النصية في لغة البرمجة بايثون. بغض النظر عما إذا كنت تعمل مع ملفات نصية أو قواعد بيانات أو تطبيقات معالجة النصوص ، فإن القدرة على العثور على الكلمات وتحليلها في سلسلة أمر ضروري. في هذا الدليل ، سنلقي نظرة على طرق مختلفة للبحث عن كلمة في سلسلة في بايثون ونعرض الفروق الدقيقة في تنفيذ هذه المهمة.
واحدة من أبسط الطرق وأكثرها شيوعا للبحث عن كلمة في سلسلة هي استخدام طريقة الانقسام (). تقسم هذه الطريقة السلسلة إلى كلمات باستخدام مسافة كفاصل وتعيد قائمة بالكلمات. ثم يمكنك التحقق مما إذا كانت الكلمة التي تبحث عنها موجودة في هذه القائمة. ومع ذلك ، فإن هذه الطريقة ليست الخيار الأفضل إذا احتجنا إلى البحث عن كلمة حساسة لحالة الأحرف ، أو إذا كانت هناك أحرف أخرى في السلسلة إلى جانب الأحرف والأرقام.
طريقة أكثر مرونة وقوة للبحث عن كلمة في سلسلة هي استخدام التعبيرات العادية. يوفر بيثون وحدة إعادة التي تسمح لك لإنشاء واستخدام التعبيرات العادية للبحث عن النص والتجهيز. باستخدام التعبيرات العادية ، يمكننا تعيين قالب يتطابق مع الكلمة التي نبحث عنها وإجراء بحث في سلسلة معينة. عندما نجد تطابقا ، يمكننا الحصول على معلومات حول موقع الكلمة الموجودة في السلسلة وتنفيذ الإجراءات الإضافية اللازمة.
- كيفية العثور على كلمة في سلسلة في بيثون
- انقسام()
- طريقة البحث()
- طريقة التعبيرات العادية
- طرق البحث عن كلمة في سلسلة في بايثون
- التعبيرات العادية للبحث عن كلمة في سلسلة في بايثون
- القيود عند البحث عن كلمة في سلسلة في بايثون
- أمثلة على استخدام البحث عن كلمة في سلسلة في بايثون
- نصائح وحيل للبحث عن كلمة في سلسلة في بايثون
- سؤال وجواب
- ما هو الغرض من هذه المقالة?
- ما هي أسهل طريقة للعثور على كلمة في سلسلة بيثون?
- كيف أجد كل تكرارات كلمة في سلسلة?
- ما هي أفضل طريقة لاستخدامها للبحث عن كلمة في سلسلة في بيثون?
كيفية العثور على كلمة في سلسلة في بيثون
بايثون هي لغة برمجة شائعة توفر أدوات متنوعة للعمل مع السلاسل. في هذه المقالة ، سوف ننظر في كيفية العثور على كلمة في سلسلة في بيثون باستخدام أساليب مدمجة والتعبيرات العادية.
طريقة الانقسام ()
تتمثل إحدى طرق العثور على كلمة في سلسلة في تقسيم السلسلة إلى كلمات منفصلة باستخدام طريقة الانقسام (). تقوم هذه الطريقة بتحويل سلسلة إلى قائمة باستخدام الفاصل المحدد. بعد ذلك ، يمكنك التحقق مما إذا كانت الكلمة المطلوبة موجودة في القائمة.
هذا هو ما يبدو رمز مثل:
سلسلة = " مرحبا العالم!"
كلمة = "العالم"
قائمة الكلمات = سلسلة.انقسام ("")
إذا كانت الكلمة في قائمة الكلمات:
طباعة ("كلمة موجودة في السطر")
آخر:
طباعة ("كلمة غير موجودة في السطر")
في هذا المثال ، قمنا بتقسيم السلسلة " مرحبا ، العالم!"في كلمتين منفصلتين - "مرحبا" و " العالم!". ثم تحققنا مما إذا كانت كلمة "عالم" موجودة في القائمة وعرضنا الرسالة المقابلة.
طريقة البحث ()
هناك طريقة أخرى للعثور على كلمة في سلسلة وهي استخدام طريقة البحث (). تبحث هذه الطريقة عن التكرار الأول لسلسلة فرعية معينة في سلسلة وإرجاع فهرس هذا التكرار. إذا لم يتم العثور على حدوث ، فإن الطريقة ترجع -1.
هذا هو ما يبدو رمز مثل:
سلسلة = " مرحبا ، العالم!"
كلمة = "العالم"
مؤشر = سلسلة.البحث عن (كلمة)
إذا مؤشر != -1:
طباعة ("كلمة موجودة في السطر")
آخر:
طباعة ("كلمة غير موجودة في السطر")
في هذا المثال ، نحن نبحث عن حدوث كلمة " العالم "في سلسلة" مرحبا ، العالم!"باستخدام طريقة البحث (). إذا تم العثور على حدوث ، فسيكون الفهرس أكبر من أو يساوي 0 ، ونعرض الرسالة المقابلة.
التعبيرات العادية
هناك طريقة أخرى للعثور على كلمة في سلسلة وهي استخدام التعبيرات العادية. التعبيرات العادية هي تسلسلات من الأحرف التي تحدد نمط البحث في النص.
وهنا ما يبدو رمز مثل:
استيراد إعادة
سلسلة = " مرحبا ، العالم!"
كلمة = "العالم"
نمط = ص "\ ب "+ كلمة + ص" \ ب"
النتيجة = إعادة.بحث (نمط ، سلسلة)
إذا كانت النتيجة:
طباعة ("الكلمة الموجودة في السلسلة")
آخر:
طباعة ("لم يتم العثور على الكلمة في السلسلة")
في هذا المثال ، نستخدم وحدة إعادة للعمل مع التعبيرات العادية. نقوم بإنشاء قالب باستخدام التعبير العادي"\العالم\ب "، حيث" \ ب " هي حدود الكلمة. ثم نستخدم طريقة البحث () للبحث عن نمط في سلسلة. إذا تم العثور على القالب ، فإننا نعرض الرسالة المقابلة.
خاتمة:
- تقسم طريقة الانقسام () سلسلة إلى قائمة من الكلمات وتسمح لك بالتحقق مما إذا كانت الكلمة المطلوبة موجودة في القائمة.
- تبحث طريقة البحث() عن أول ظهور لكلمة معينة في سلسلة وتعيد فهرسها.
- التعبيرات العادية هي أداة قوية للبحث عن الكلمات في سلسلة باستخدام أنماط محددة مسبقا.
طرق البحث عن كلمة في سلسلة في بايثون
1. البحث()
الطريقة تقوم طريقة البحث () بإرجاع موضع التكرار الأول للكلمة أو السلسلة الفرعية المحددة في السلسلة. إذا لم يتم العثور على الكلمة أو السلسلة الفرعية ، فإن الطريقة ترجع -1.
مثال الاستخدام:
سلسلة = " مرحبا العالم!"
موقف = سلسلة.البحث ("العالم")
طباعة (موقف) # الإخراج: 8
2. طريقة الفهرس ()
تعمل طريقة الفهرس () بشكل مشابه لطريقة البحث () ، ومع ذلك ، إذا لم يتم العثور على كلمة أو سلسلة فرعية ، فستقوم برمي استثناء فالويرور بدلا من إرجاع -1. هذه الطريقة مفيدة عندما تريد أن يتوقف البرنامج عن العمل إذا لم يتم العثور على الكلمة.
مثال الاستخدام:
سلسلة = " مرحبا ، العالم!"
موقف = سلسلة.الفهرس ("العالم")
طباعة (موقف) # الإخراج: 8
3. طريقة الانقسام ()
تقسم طريقة الانقسام () سلسلة إلى قائمة سلاسل فرعية باستخدام الفاصل المحدد. ثم يمكنك التحقق مما إذا كانت الكلمة التي تبحث عنها موجودة في القائمة الناتجة.
مثال الاستخدام:
سلسلة = " مرحبا العالم!"
الكلمات = سلسلة.انقسام()
طباعة ("العالم" بالكلمات) # الإخراج: صحيح
4. طريقة ريفيند ()
تعمل طريقة ريفيند () بشكل مشابه لطريقة البحث () ، ولكنها ترجع موضع آخر ظهور للكلمة أو السلسلة الفرعية المحددة في السلسلة.
مثال الاستخدام:
سلسلة = " مرحبا ، العالم!"
موقف = سلسلة.رفند ("العالم")
طباعة (موقف) # الإخراج: 8
5. طريقة ريندكس ()
تعمل طريقة ريندكس () بشكل مشابه لطريقة الفهرس () ، ولكنها ترجع موضع آخر ظهور للكلمة أو السلسلة الفرعية المحددة في السلسلة.
مثال الاستخدام:
سلسلة = " مرحبا ، العالم!"
موقف = سلسلة.ريندكس ("العالم")
طباعة (موقف) # الإخراج: 8
التعبيرات العادية للبحث عن كلمة في سلسلة في بايثون
يوفر بيثون أدوات قوية للعمل مع التعبيرات العادية. تسمح لك التعبيرات العادية بالبحث عن العمليات وتنفيذها على سلاسل فرعية باستخدام أنماط معينة.
للبحث عن كلمة في سلسلة في بيثون ، يمكننا استخدام وحدة إعادة (التعبيرات العادية). توفر هذه الوحدة وظائف للعمل مع التعبيرات العادية.
قبل أن نبدأ العمل مع التعبيرات العادية ، نحتاج إلى استيراد وحدة إعادة:
استيراد إعادةللبحث عن كلمة في سلسلة. تأخذ هذه الوظيفة وسيطتين: تعبير عادي وسلسلة نبحث فيها عن كلمة معينة.
استيراد إعادة
# الخط الأصلي
سلسلة = " مرحبا ، العالم! مرحبا العالم!"
# التعبير العادي للبحث عن كلمة "العالم"
نمط = ص "\ العالم \ ب"
# البحث عن كلمة "العالم" في سلسلة
مباراة = إعادة.بحث (نمط ، سلسلة)
إذا تطابق:
طباعة ("تم العثور على كلمة "العالم" في السلسلة.")
آخر:
طباعة ("لم يتم العثور على كلمة "العالم" في السلسلة.")
يعني أننا نبحث عن كلمة" عالم " ، والتي يجب فصلها عن الأحرف الأخرى بحدود الكلمات.
نتيجة لتنفيذ التعليمات البرمجية أعلاه ، سوف نحصل على الإخراج التالي:
- تم العثور على كلمة 'العالم' في السلسلة.
إرجاع كائن مطابقة يحتوي على معلومات حول المطابقة. يمكننا استخدام طرق كائن المطابقة لعمل إضافي مع المطابقة التي تم العثور عليها.
وبالتالي ، باستخدام التعبيرات العادية في بايثون ، يمكننا بسهولة ويسر العثور على الكلمات في سلسلة.
القيود عند البحث عن كلمة في سلسلة في بايثون
عند البحث عن كلمة في سلسلة في بيثون ، هناك العديد من القيود التي تستحق النظر:
- لتقليل سلسلة وكلمة إلى نفس الحالة قبل البحث.
- الأحرف الخاصة: قد تؤثر بعض الأحرف ، مثل المسافات وعلامات الترقيم والأحرف الخاصة الأخرى ، على نتائج البحث. على سبيل المثال ، البحث عن كلمة "كلمة" في السلسلة "هذه كلمة!"سيعود كاذبة ، لأن هناك علامة تعجب بعد الكلمة. لحل هذه المشكلة ، يمكنك استخدام طرق لإزالة علامات الترقيم والمسافات من السلسلة قبل البحث.
- تكرارات متعددة: عند استخدام وظائف البحث عن الكلمات في سلسلة ، قد تواجه موقفا تحدث فيه كلمة عدة مرات في سلسلة. تقوم وظائف البحث بإرجاع أول ظهور لكلمة في سلسلة. إذا كنت بحاجة إلى العثور على جميع تكرارات الكلمة ، فقد تحتاج إلى استخدام حلقة أو طرق أخرى لمعالجة كل تكرار على حدة.
ستساعدك معرفة هذه القيود على إنشاء رمز أكثر دقة وموثوقية للبحث عن كلمة في سلسلة في بايثون. ضع هذه الميزات في الاعتبار عند تطوير الحلول الخاصة بك.
أمثلة على استخدام البحث عن كلمة في سلسلة في بايثون
يوفر بيثون عدة طرق للبحث عن كلمة أو سلسلة فرعية في سلسلة. دعونا نلقي نظرة على بعض الأمثلة على استخدام البحث عن كلمة في سلسلة في بايثون:
- سلسلة = "مرحبا العالم"
- يسمح لك باستخدام التعبيرات العادية للبحث عن كلمة في سلسلة. على سبيل المثال ، يمكنك استخدام
:
استيراد إعادة
طباعة ("كلمة غير موجودة")
استخدم طريقة البحث (): تتيح لك طريقة البحث () العثور على فهرس أول ظهور لكلمة في سلسلة. إذا لم يتم العثور على الكلمة ، فإن الطريقة ترجع -1. على سبيل المثال:
النص = "هذا مثال لنص البحث"
فهرس = نص.بحث ("بحث")