بايثون هي واحدة من أكثر لغات البرمجة شيوعا المستخدمة لحل المهام المختلفة. تتمثل إحدى هذه المهام في البحث عن الكلمة الصحيحة في ملف أو مستند. في هذه المقالة ، سنلقي نظرة على طريقة بسيطة لتنفيذ هذه المهمة باستخدام بايثون.
واحدة من الطرق لتنفيذ البحث عن كلمة في ملف هو استخدام مكتبة بيثون إعادة القياسية (التعبيرات العادية). تسمح لك التعبيرات العادية بإجراء بحث وتحليل سلسلة معقدة ، بما في ذلك البحث عن كلمات معينة.
باستخدام التعبيرات العادية ، يمكنك تخصيص أنواع البحث ، على سبيل المثال ، يمكنك تحديد أنك تحتاج إلى العثور على الكلمة بأكملها فقط ، وليس جزءا منها أو أجزاء منها.
لنبدأ باستيراد وحدة إعادة. للبحث عن الكلمة المطلوبة في الملف ، سنحتاج إلى فتح الملف وقراءة محتوياته وإجراء بحث باستخدام تعبير عادي. ثم يمكنك تنفيذ الإجراءات اللازمة مع النتائج التي تم العثور عليها ، على سبيل المثال ، عرضها على الشاشة أو كتابتها إلى ملف آخر.
- طرق البحث عن كلمة في ملف باستخدام بايثون
- 1. طريقة القراءة ()
- 2. طريقة القراءة ()
- 3. طريقة البحث ()
- 4. وحدة إعادة
- 5. مكتبة الباندا
- الطريقة 1: استخدام القراءة ()
- طريقة 2: باستخدام إعادة.بحث () وظيفة
- الطريقة 3: استخدام وحدة بيبدف 2
- الطريقة 4: استخدام مكتبات الجهات الخارجية
- سؤال وجواب
- كيف يمكنني العثور على الكلمة الصحيحة في ملف باستخدام بيثون?
- التي بيثون وحدات يجب أن تستخدم للبحث عن كلمة في ملف?
- هل من الممكن استخدام بايثون للبحث عن كلمة في جميع الملفات في دليل معين?
- هل من الممكن استخدام بيثون للبحث عن الكلمات في الملفات الكبيرة?
- هل من الممكن لجعل البحث عن كلمة في ملف حالة حساسة باستخدام بيثون?
- كيف يمكنني الحصول فقط على السلاسل التي تحتوي على الكلمة المطلوبة من ملف باستخدام بيثون?
طرق البحث عن كلمة في ملف باستخدام بايثون
توفر بايثون العديد من الطرق المريحة للعمل مع الملفات وإجراء عمليات البحث. إذا كنت بحاجة إلى العثور على كلمة معينة في ملف ، يمكنك استخدام عدة طرق.
1.
تسمح لك طريقة القراءة () بقراءة الأسطر بالتسلسل من ملف. يمكنك استخدام هذه الطريقة لتصفح كل سطر من الملف والتحقق مما إذا كان يحتوي على الكلمة التي تبحث عنها.
ملف = فتح ('ملف.النص ' ، 'ص')
كلمة = "بيثون"
للخط في الملف:
إذا كلمة في خط:
طباعة ("تم العثور على الكلمة!")
استراحة
ملف.إغلاق()
2. طريقة القراءة ()
تسمح لك طريقة القراءة () بقراءة الملف بأكمله. يمكنك حفظ محتويات الملف إلى متغير ثم إجراء عملية بحث في هذا المتغير.
ملف = فتح ('ملف.النص ' ، 'ص')
المحتويات = ملف.اقرأ()
كلمة = "بيثون"
إذا كلمة في المحتويات:
طباعة ("وجدت كلمة!")
ملف.إغلاق()
3. البحث()
طريقة البحث () طريقة البحث عن أول ظهور لسلسلة فرعية محددة في سلسلة وإرجاع فهرسها. يمكنك استخدام هذه الطريقة للبحث عن كلمة في كل سطر من الملف.
ملف = فتح ('ملف.النص ' ، 'ص')
كلمة = "بيثون"
للخط في الملف:
إذا خط.البحث عن (كلمة) > = 0:
طباعة ("وجدت كلمة!")
استراحة
ملف.إغلاق()
4. وحدة إعادة
توفر وحدة إعادة أدوات قوية للعمل مع التعبيرات العادية. باستخدامه ، يمكنك إجراء عمليات بحث معقدة عن الملفات ، على سبيل المثال ، البحث عن كلمة باستخدام قالب.
استيراد إعادة
ملف = فتح ('ملف.النص ' ، 'ص')
كلمة = "بيثون"
للخط في الملف:
إذا إعادة.بحث (ص '\ ب '+ كلمة + ص' \ ب ' ، خط):
طباعة ("وجدت كلمة!")
استراحة
ملف.إغلاق()
5. مكتبة الباندا
إذا كنت بحاجة إلى إجراء عمليات ملف أكثر تعقيدا ، مثل البحث عن كلمة بتنسيق بيانات منظم ، فيمكنك استخدام مكتبة الباندا. يوفر أدوات ملائمة للعمل مع الجداول وإجراء عمليات البحث.
استيراد الباندا كما بد
البيانات = بد.<url>.كسف')
كلمة = "بيثون"
إذا كلمة في البيانات.القيم:
طباعة ("وجدت كلمة!")
هذه ليست سوى بعض الطرق للبحث عن كلمة في ملف باستخدام بايثون. يمكنك اختيار الطريقة الأكثر ملاءمة لمهمتك واستخدامها لحل مهام البحث عن الكلمات في الملفات.
الطريقة 1: استخدام القراءة ()
طريقة في بيثون ، يمكنك استخدام طريقة القراءة () للعثور على الكلمة المطلوبة في ملف. تتيح لك هذه الطريقة قراءة محتويات الملف في سطر واحد ثم البحث في هذا السطر.
قبل استخدام طريقة القراءة () ، يجب عليك فتح الملف باستخدام وظيفة الفتح (). على سبيل المثال:
ملف = فتح ("اسم الملف.النص " ، "ص")
بعد فتح الملف ، يمكنك قراءة محتوياته باستخدام طريقة القراءة ():
المحتوى = ملف.اقرأ()
سيحتوي على جميع الأحرف من الملف.
الآن بعد أن أصبح لدينا محتويات الملف ، يمكننا البحث عن الكلمة المطلوبة باستخدام طريقة البحث (). على سبيل المثال ، إذا أردنا العثور على كلمة "بيثون" ، فيمكننا كتابة الكود التالي:
إذا المحتوى.تجد ("بيثون")!= -1:
طباعة ("وجدت كلمة!")
آخر:
طباعة ("كلمة غير موجودة")
إذا كانت طريقة البحث() ترجع -1 ، فهذا يعني أنه لم يتم العثور على الكلمة.
بعد الانتهاء من العمل مع الملف ، تحتاج إلى إغلاقه باستخدام طريقة الإغلاق():
ملف.إغلاق()
يعد استخدام طريقة القراءة () مناسبا ، ولكنه قد يكون غير فعال للملفات الكبيرة ، لأنه يقرأ جميع المحتويات في سطر واحد. إذا كان الملف كبيرا جدا ، فقد يؤدي هذا الحل إلى مشاكل في استخدام ذاكرة الوصول العشوائي.
إذا كنت ترغب في قراءة سطر الملف بسطر أو في أجزاء ، فاستخدم طرقا أخرى مثل ريدلاين() أو ريدلاين().
طريقة 2: باستخدام إعادة.بحث () وظيفة
هناك طريقة أخرى للعثور على الكلمة الصحيحة في ملف باستخدام بايثون وهي استخدام إعادة.بحث () وظيفة. تتيح لك هذه الوظيفة البحث عن التطابقات باستخدام التعبيرات العادية.
أولا ، تحتاج إلى استيراد وحدة إعادة:
استيراد إعادةثم افتح الملف للقراءة وقراءة جميع محتوياته:
مع فتح ('ملفي.النص ' ، 'ص') كملف:
المحتوى = ملف.اقرأ()
بعد ذلك ، نقوم بإنشاء تعبير عادي للبحث عن الكلمة التي نحتاجها. على سبيل المثال ، نريد العثور على كلمة "بيثون" في الملف:
نمط = ر 'بيثون'الآن ، وذلك باستخدام إعادة.وظيفة البحث () ، نحن نبحث عن تطابق مع تعبيرنا العادي في محتويات الملف:
مباراة = إعادة.بحث (نمط ، محتوى)وظيفة إعادة.يقوم البحث () بإرجاع كائن تطابق إذا تم العثور عليه ، ولا شيء إذا لم تكن هناك تطابقات. بعد ذلك ، يمكننا استخدام طرق كائن المطابقة للحصول على مزيد من المعلومات. على سبيل المثال ، لمعرفة موضع المباراة الأولى ، يمكنك استخدام طريقة البداية ():
إذا تطابق:
موقف = مباراة.بداية()
طباعة (و " كلمة وجدت في موضع {موضع}")
وبالتالي ، يمكننا استخدام إعادة.بحث () وظيفة للبحث عن الكلمة المطلوبة في الملف باستخدام بيثون وبالإضافة إلى ذلك معالجة النتائج التي تم الحصول عليها.
الطريقة 3: استخدام وحدة بيبدف 2
في هذه الطريقة ، سوف نستخدم وحدة بيدف2 لقراءة وتحليل ملفات بدف. وحدة بيدف2 هي أداة قوية تسمح لك بالعمل مع ملفات بدف ، بما في ذلك استخراج النصوص والصور وغيرها من البيانات.
أولا ، قم بتثبيت وحدة بيبدف 2 عن طريق تشغيل الأمر التالي في سطر الأوامر:
بيب تثبيت بيبدف 2
بعد تثبيت وحدة بيدف2 ، يمكننا استخدامه لقراءة ملفات بدف والبحث عن الكلمة الصحيحة. Ниже приведен пример кода, который демонстрирует использование модуля PyPDF2 для поиска слова в файле PDF:
import PyPDF2
def find_word(file_path, word):
with open(file_path, 'rb') as file:
reader = PyPDF2.PdfFileReader(file)
num_pages = reader.numPages
for page_num in range(num_pages):
page = reader.getPage(page_num)
text = page.extractText()
if word in text:
return True
return False
file_path = 'file.pdf'
word = 'python'
if find_word(file_path, word):
print('Слово найдено в файле PDF.')
else:
طباعة ('لم يتم العثور على كلمة في ملف بدف.')
في هذا الرمز ، ونحن إنشاء وظيفة فيند_ورد ، الذي يأخذ المسار إلى ملف بدف وكلمة البحث كوسائط. ثم نفتح ملف بدف في وضع قراءة الملف الثنائي باستخدام وظيفة فتح وإنشاء كائن بدفيليريدر لقراءة ملف بدف. نذهب من خلال كل صفحة من ملف بدف باستخدام ل حلقة واستخدام طريقة إكستراكتكست لاستخراج النص من الصفحة. ثم نتحقق مما إذا كانت الكلمة التي تم البحث عنها موجودة في النص المستخرج. إذا تم العثور على كلمة ، نعود صحيح ، وإلا نعود كاذبة.
في الجزء الرئيسي من التعليمات البرمجية ، ونحن ندعو وظيفة فيند_ورد مع المسار المحدد إلى ملف بدف والكلمة المطلوبة. نعرض رسالة اعتمادا على نتيجة البحث.
يمكن أن تكون هذه الطريقة مفيدة للبحث عن معلومات محددة في قواعد بيانات الملفات الكبيرة أو المجلات أو مستندات بدف الأخرى.
الطريقة 4: استخدام مكتبات الجهات الخارجية
طريقة أخرى بسيطة للعثور على الكلمة الصحيحة في ملف باستخدام بايثون هي استخدام مكتبات الجهات الخارجية. هناك العديد من المكتبات في بيثون التي تجعل من السهل العمل مع الملفات النصية والبحث من خلالها.
واحدة من المكتبات الأكثر شعبية للعمل مع النص هي مكتبة إعادة. يوفر أدوات قوية للعمل مع التعبيرات العادية ويمكن استخدامه للعثور على الكلمة الصحيحة في ملف نصي.
مثال على استخدام مكتبة إعادة للبحث عن كلمة في ملف:
استيراد إعادة
# فتح الملف للقراءة
مع فتح ('ملف.النص ' ، 'ص') كملف:
# قراءة النص بأكمله من الملف
نص = ملف.اقرأ()
# استخدام تعبير عادي للبحث عن كلمة
كلمة = 'الكلمة الصحيحة'
نمط = ص '\ ب '+ كلمة + ص' \ ب'
مباريات = إعادة.فيندال (نمط ، نص)
# إخراج نتائج البحث
إذا تطابق:
طباعة ('كلمة' ، كلمة ، ' وجدت في الملف.')
آخر:
طباعة ('كلمة' ، كلمة ، ' غير موجود في الملف.')
في هذا المثال ، نفتح الملف أولا للقراءة باستخدام الوظيفة المفتوحة. ثم نقرأ كل النص من الملف إلى متغير النص. بعد ذلك ، نستخدم وظيفة فيندال من مكتبة إعادة للبحث عن كلمة باستخدام نمط التعبير العادي. يستخدم التعبير العادي الأحرف \ ب لتمييز حدود الكلمة ، حتى لا تبحث عن كلمة داخل كلمة أخرى.
نحن إخراج نتائج البحث باستخدام المشغل إذا-آخر. إذا لم تكن قائمة التطابقات فارغة ، فسيتم العثور على الكلمة في الملف ، وإلا فلن يتم العثور عليها.
توفر مكتبة إعادة العديد من الوظائف والميزات الأخرى للعمل مع النص. يمكن أن يكون مفيدا إذا كنت بحاجة إلى إجراء عمليات بحث أكثر تعقيدا أو معالجة النص.
سؤال وجواب
كيف يمكنني العثور على الكلمة الصحيحة في ملف باستخدام بيثون?
للبحث عن الكلمة الصحيحة في ملف باستخدام بايثون ، يمكنك استخدام الكود التالي:
التي بيثون وحدات يجب أن تستخدم للبحث عن كلمة في ملف?
للبحث عن كلمة في ملف باستخدام بيثون ، يمكنك استخدام وحدة 'إعادة' للعمل مع التعبيرات العادية و` إو ' وحدة للعمل مع الملفات.
هل من الممكن استخدام بايثون للبحث عن كلمة في جميع الملفات في دليل معين?
نعم ، يمكنك استخدام بايثون للبحث عن كلمة في جميع الملفات في دليل معين. للقيام بذلك ، يمكنك استخدام وحدات 'نظام التشغيل' و 'غلوب' للحصول على قائمة من الملفات في الدليل و `إو` وحدة لقراءة محتويات الملفات.
هل من الممكن استخدام بيثون للبحث عن الكلمات في الملفات الكبيرة?
نعم ، يمكن استخدام بايثون للبحث عن الكلمات في الملفات الكبيرة. ومع ذلك ، عند العمل مع الملفات الكبيرة ، يوصى باستخدام نهج تكراري حتى لا يتم تحميل الملف بأكمله في الذاكرة مرة واحدة. للقيام بذلك ، يمكنك استخدام طريقة` ريدلين () `أو وحدة` ماب ' لقراءة الملف في أجزاء.
هل من الممكن لجعل البحث عن كلمة في ملف حالة حساسة باستخدام بيثون?
نعم ، يمكنك جعل البحث عن كلمة في ملف حالة حساسة باستخدام بيثون. للقيام بذلك ، يمكنك استخدام ' إعادة.بحث () 'طريقة مع العلم 'إعادة'.إغنوريكاس ' أو تقليل الكلمة والسلسلة إلى أحرف صغيرة أو كبيرة قبل البحث.
كيف يمكنني الحصول فقط على السلاسل التي تحتوي على الكلمة المطلوبة من ملف باستخدام بيثون?
للحصول فقط على السلاسل التي تحتوي على الكلمة المطلوبة من ملف باستخدام بيثون ، يمكنك استخدام `إعادة.فيندال () 'طريقة أو' إعادة.العثور على () ' باستخدام تعبير عادي يبحث عن الكلمة الصحيحة في كل سطر من الملف.