مثير للإعجاب

مقدمة في Preg في PHP

مقدمة في Preg في PHP

01 من 05

وظيفة Preg_Grep PHP

وظيفة PHP ، preg_grep، يستخدم للبحث عن صفيف لأنماط محددة ثم إرجاع صفيف جديد بناءً على هذا التصفية. هناك طريقتان لإرجاع النتائج. يمكنك إرجاعها كما هي ، أو يمكنك عكسها (بدلاً من إعادة ما هي المطابقات فقط ، فإنها ستعيد فقط ما لا يتطابق). تم صياغتها على النحو التالي: preg_grep (search_pattern ، $ your_array ، اختياري_عكس)يجب أن يكون search_pattern تعبيرًا منتظمًا. إذا لم تكن على دراية بهذه المقالة ، فإن هذه المقالة تمنحك نظرة عامة على بناء الجملة.

قد ينتج عن هذا الرمز البيانات التالية:
صفيف (4 => 4 5 => 5)
صفيف (3 => ثلاثة 6 => ستة 9 => تسعة)

أولاً ، نقوم بتعيين متغير البيانات الخاص بنا. هذه قائمة بالأرقام ، بعضها في شكل ألفا ، والأخرى رقمية. أول شيء نديره يسمى $ mod1. نحن هنا نبحث عن أي شيء يحتوي على 4 أو 5 أو 6. عندما تتم طباعة النتيجة أدناه ، نحصل على 4 و 5 فقط ، لأن 6 كتب على "ستة" لذلك لم يطابق بحثنا.

بعد ذلك ، نقوم بتشغيل $ mod2 ، والذي يبحث عن أي شيء يحتوي على أحرف رقمية. ولكن هذه المرة ندرج PREG_GREP_INVERT. سيؤدي ذلك إلى قلب بياناتنا ، لذا بدلاً من إخراج الأرقام ، فإنه يخرج جميع إدخالاتنا التي لم تكن رقمية (ثلاثة ، ستة وتسعة).

02 من 05

وظيفة Preg_Match PHP

ال Preg_Match تستخدم وظيفة PHP للبحث في سلسلة وإرجاع 1 أو 0. في حالة نجاح البحث ، سيتم إرجاع 1 ، وإذا لم يتم العثور على 0 فسيتم إرجاع. على الرغم من إمكانية إضافة متغيرات أخرى ، إلا أنه يتم صياغتها ببساطة على النحو التالي: preg_match (search_pattern ، your_string). يجب أن يكون search_pattern تعبيرًا منتظمًا.

يستخدم الرمز أعلاه preg_match للتحقق من وجود كلمة أساسية (أول عصير ثم بيضة) والردود بناءً على ما إذا كانت صحيحة (1) أو false (0). لأنه يُرجع هاتين القيمتين ، يتم استخدامه غالبًا في عبارة شرطية.

03 من 05

وظيفة Preg_Match_All PHP

Preg_Match_All يستخدم للبحث عن سلسلة لأنماط محددة ويخزن النتائج في صفيف. مختلف preg_match الذي يتوقف عن البحث بعد أن يجد تطابقًا ، preg_match_all يبحث في السلسلة بأكملها ويسجل جميع التطابقات. تم صياغتها على النحو التالي: preg_match_all (النمط ، السلسلة ، صفيف $ ، تحديد_اختياري ، اختياري_الإعداد).

في المثال الأول ، نستخدم PREG_PATTERN_ORDER. نحن نبحث عن شيئين. واحد هو الوقت ، والآخر هو علامة صباحا / مساء. يتم إخراج نتائجنا إلى $ match ، كصفيف حيث $ match0 يحتوي على جميع التطابقات ، $ match1 يحتوي على جميع البيانات المطابقة للبحث الفرعي الأول (الوقت) و $ match2 يحتوي على جميع البيانات التي تطابق البحث الفرعي الثاني (ص / مساء) .

في المثال الثاني ، نستخدم PREG_SET_ORDER. هذا يضع كل نتيجة كاملة في مجموعة. النتيجة الأولى هي $ match0 ، مع $ match00 هي المباراة الكاملة ، $ match01 هي المباراة الفرعية الأولى و $ match02 هي المباراة الفرعية الثانية.

04 من 05

Preg_Replace PHP وظيفة

ال preg_replace تُستخدم الدالة للقيام بالعثور على واستبدالها في سلسلة أو صفيف. يمكننا أن نعطيه شيئًا واحدًا للعثور عليه واستبداله (على سبيل المثال ، يبحث عن كلمة "هو" وتغييرها إلى "هي") ، أو يمكن أن نعطيها قائمة كاملة بالأشياء (صفيف) للبحث عنها ، مع كل منها بديل المقابلة. صاغها كما preg_replace (search_for ، replace_with ، your_data ، اختياري_limit ، اختياري_العدد) سوف الحد الافتراضي إلى -1 ، وهو لا يوجد حد. تذكر أن بياناتك يمكن أن تكون سلسلة أو صفيفًا.

في مثالنا الأول ، نستبدل ببساطة كلمة "أ" بكلمة "أ". كما ترون هذه هي cAse seNsiTIvE. بعد ذلك ، قمنا بإعداد صفيف ، لذلك في مثالنا الثاني ، نستبدل كلتا الكلمتين "the" و "cat". في المثال الثالث الخاص بنا ، قمنا بتعيين الحد على 1 ، بحيث يتم استبدال كل كلمة مرة واحدة فقط. أخيرًا ، في مثالنا الرابع ، نحافظ على عدد البدائل التي قمنا بها.

05 من 05

Preg_Split PHP وظيفة

الوظيفة Preg_Spilit يستخدم لاتخاذ سلسلة ووضعها في مجموعة. يتم تقسيم السلسلة إلى قيم مختلفة في الصفيف استنادًا إلى المدخلات الخاصة بك. صاغها كما preg_split (split_pattern ، your_data ، اختياري_limit ، اختياري_flags)

في الكود أعلاه ننفذ ثلاثة انشقاقات. في البداية ، قمنا بتقسيم البيانات حسب كل حرف. في الثانية ، قمنا بتقسيمها بمساحة فارغة ، وبالتالي نعطي كل كلمة (وليس كل حرف) إدخال صفيف. وفي مثالنا الثالث ، نستخدم "." فترة لتقسيم البيانات ، وبالتالي إعطاء كل جملة إدخال صفيف الخاصة به.

لأنه في المثال الأخير لدينا نستخدم "." فترة الانقسام ، يتم بدء إدخال جديد بعد الفترة الأخيرة ، لذلك نضيف العلامة PREG_SPLIT_NO_EMPTY بحيث يتم إرجاع أية نتائج فارغة. الأعلام الأخرى المتاحة هي PREG_SPLIT_DELIM_CAPTURE، والتي تجسد أيضًا الشخصية التي تقسمها ("." على سبيل المثال) و PREG_SPLIT_OFFSET_CAPTURE، الذي يلتقط الإزاحة بالأحرف التي حدث فيها الانقسام.

تذكر أن split_pattern يجب أن يكون تعبيرًا عاديًا وأن الحد من -1 (أو لا يوجد حد) هو الافتراضي إذا لم يتم تحديد أي.


شاهد الفيديو: Beginner PHP Tutorial -34- Expression Matching using Preg Match FunctionUrduHindi (سبتمبر 2021).