logo

أحرف البدل في بايثون

حرف البدل هو رمز يمكن استخدامه بدلاً من حرف واحد أو أكثر أو بالإضافة إليه. في برامج الكمبيوتر واللغات ومحركات البحث، بما في ذلك أنظمة التشغيل، يتم استخدام أحرف البدل لتكثيف معايير البحث. تعد علامة الاستفهام (؟) والعلامة النجمية () من أكثر أحرف البدل شيوعًا.

أنواع أحرف البدل

النجمة (∗)

يمكن استخدام العلامة النجمية (*) أو الحرف لتحديد أي عدد من الأحرف. تُستخدم العلامة النجمية * عادةً في ختام الكلمة الجذرية وعندما يكون من الضروري البحث عن الكلمات الجذرية ذات النهايات المحتملة المتنوعة.

على سبيل المثال، إذا استخدمنا كلمة 'لعبة' كمثال، فستظهر العبارات 'لاعب' و'ألعاب' في جميع نتائج البحث. اعتمادًا على معلمات البحث والكلمات الأخرى، قد تكون هناك كلمات إضافية بالإضافة إلى هاتين الكلمتين.

علامة الاستفهام (؟)

علامة الاستفهام أم الشخصية؟ يدل على واحد. ويمكن استخدام أي من الحروف الموجودة في جذر الكلمة معها. عندما تحتوي الكلمة على عدة تهجئات أخرى، فإن استخدام عامل علامة الاستفهام يؤدي إلى تسريع العملية.

بدلاً من حرف البدل لعلامة الاستفهام، النقطة أو. يتم استخدام الحرف لتمثيل حرف واحد.

خذ كلمة 'الشرف' على سبيل المثال. سيشير إلى النتيجة على أنها شرف مع حذف الشرف في هذا السياق.

بحث البدل في بيثون

لاستخدام بحث أحرف البدل في Python، يجب تضمين مكتبة إعادة في البرنامج. المكتبة المستخدمة للعمل مع التعبيرات العادية في بايثون تسمى مكتبة re، وهي اختصار لمصطلح التعبير العادي.

قائمة تهيئة بايثون

لإجراء البحث، سنقوم بتجميع قائمة من الكلمات، وبعد ذلك، سنستخدم وظائف إعادة المكتبة. وبمساعدة أحرف البدل، سنحدد موقع التطابق مع الكلمة الصحيحة.

إدراج الخلية في

يقوم كود Python التالي بإجراء بحث بدل.

 import re str = re.compile('hel.o') a = ['hello', 'welcome', 'to', 'java', 'point'] match_is = [string for string in a if re.match_is(str, string)] print(match_is) 

انتاج:

 ['hello'] 

التنفيذ:

باستخدام وحدة regex (التعبيرات العادية)، يمكننا تنفيذ أحرف البدل في Python.

النقطة. تم استبدال علامة الاستفهام بحرف ?.

 import re # To change the outcomes, add or remove terms from this list. words = ['color', 'colour', 'work', 'working', 'apple', 'master', 'driving'] for word in words: # Instead of the? symbol, use the . symbol if re.search('col.r', word) : print (word) 

انتاج:

 color 

مثل كيفية استخدام رمز النجمة (*)، يتم استخدام الأحرف + لمطابقة حرف واحد أو أكثر. لذا، في لغة Python، قد يبدو كود التعبير العادي الخاص بنا على هذا النحو للبحث عن جميع الكلمات التي تبدأ بالجذر 'work':

 import re # To change the outcomes, add or remove terms from this list. words = ['car', 'apple', 'work', 'working', 'goat', 'worker'] for word in words: # Instead of using the * symbol, use the.+ symbol. if re.search('work.+', word) : print (word) 

انتاج:

 working worker