الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

التعابير النمطية Regular Expressions الجزء الثاني

بدأه عامر الشابي في 23 مايو 2013 · 3 رد · 843 مشاهدة · في لغة Python
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم ورحمة الله وبركاته

سنكمل اليوم الجزء الثاني من تعلم التعابيرالمنتظمة,في هذا الجزء سندرس أهم 3 أمور في التعابير المنتظمة وهي الوضائف match,search,group,وهي عبارة عن دوال تأتي مع مكتبة او Module التعابير المنتظمة re وهذه الوضائف ستستعملها كثيرا في تعاملاتك مع التعابير المنتظمة ويجب أن تفهمها جيدا لأنه لو تعقدت فيها سوف تكره التعابير المنتظمة لذالك تابع معي جيدا عزيزي القارئ.

الوظيفة match:

هي وظيفة تعبر ما تطابق من النص مع التعبير النمطي,فالنأخذ مثال على ذلك

SV4xd.png

في السطر الثاني قلنا للبايثون هل الحرف a يتطابق مع قيم المتغير a,فكانت إجابة البايثون بنعم!

 

<_sre.SRE_Match object at 0xb7349db0>

 

 

 

حاول أن تغير قيم المتغير a لترى الناتج ماذا سيكون!

حسنا سأضع لكم هذا جدول الذي يحتوي على اهم رموز تخص تعابير المنتظمة ستعمل بها في كل برمجياتك

حمله من هنا على شكل ملف وورد

عليك دراسة هذا الجدول جيدا وتعيد صياغة الامثلة بالخطأ لكي تفهمها جيدا وتفكر مثلما تفكر البايثون!

إن هذا الجدول بسيط يشمل أهم الرموز لي ذلك عليك إكتشاف الباقي وتجربته

حسنا فالنمر الآن إلى وظيفة search:

هي وظيفة تقوم بالبحث عن مقطع ما من نص او كلمة فالنأخذ مثال على ذلك:

YUL0h.png

قلنا للبايثون هل كلمة Amer موجودة في المتغير a؟فأجابت البايثون بنعم! لماذا عزيزي القارئ ﻻ ترغم البايثون على ان تقول لك ﻻ غير في الكود وأكتبه على أشكاله العدة !

الدالة Groupe:

بالنسبة لي هذه الدالة أعتبرها دالة تنظيمية فهي إن كان النمط مطابق على النص فبهذه الدالة يمكننا أن نطبع إسم نمط ﻻحظ مثال التالي:

bHUCb.png

هنا إن الإسم موجود,بإستخدام الدالة group اصبحت البايثون تعطينا إسم الكلمة او جملة ﻻ أن تقول لنا نعم او ﻻ !

ﻻحظ المثال التالي وحاول أن تفهمه بإستخدام الجدول السابق

aqnjd.png

هذا كل ما لدينا في هذا الجزء,لم أتعمد اللخبطة في أمور أخرى أو تكبير الموضوع لأنه التعابير المنتظمة لأهميتها وصعوبة فهمها علينا النمشي [درجة درجة] ندرس الأمور بصورة بسيطة وسهلة وغير مملة,نلتقي إن شاء الله في الجزء الثالث لنتعرف على وظائف أخرى وامثلة متطورة,حاول أن تعيد كتابة الأمثلة السابق بالشكل الخاطئ لتدرس الأخطاء وكيف تتعامل مع الأمر بشكل أحسن.

تم تعديل هذه المشاركة بواسطة عامر الشابي في 23 مايو 2013 في 03:40

3

Untitled-18.jpg

#2

موضوع مميز ولكن ما يعيبة قصره على فكرة انا متابع لموضوعات isecur1ty.org وقد قرأت مقالاتك هناك ايظا،تابع ابداعك 1+

1
#3
اقتباس

موضوع مميز ولكن ما يعيبة قصره على فكرة انا متابع لموضوعات isecur1ty.org وقد قرأت مقالاتك هناك ايظا،تابع ابداعك 1+

هل تعلم لماذا تعمدت تقصيره؟

لأنه لو يكون درس طويل صعب عليك تفهم التعابير النمطية والدرس ما يحتويه ليس بي قصير لو اعطيك أمثلة أخرى راح تقرأ المقال كم من مرة لكي تفهم تلك الأمثلة

وشكرا على متابعتك  :)

Untitled-18.jpg

#4

أشكرك أخي وشرحك جمييل

ولكني مع زيادة الجرعه لأنه غالبا لا أحد يصل لهذا الدرس إلا أن كان متقدم ببايثون وبالتالي سيسهل عليه الألمام بها

وشكراا جزيلاا على هذه الدروس القيمه

1

مواضيع مشابهة

عدد الزوار حالياً

المتواجدون خلال آخر دقيقتين · يتحدّث كل ٣٠ ثانية

—الإجمالي—أعضاء مسجّلون—زوار بدون تسجيل

جارٍ التحقق من المتواجدين…