كيفية استخدام وظيفة Perl Array Grep ()

click fraud protection

دالة Perl grep () هي مرشح يقوم بتشغيل تعبير عادي على كل عنصر من عناصر المصفوفة ويعيد فقط العناصر التي يتم تقييمها على أنها صحيح. يمكن أن يكون استخدام التعبيرات العادية قويًا ومعقدًا للغاية. تستخدم دالات grep () بناء الجملةList = grep (Expression،array).

استخدام دالة Grep () لإرجاع التعبيرات الحقيقية

myNames = ("يعقوب" ، "مايكل" ​​، "جوشوا" ، "ماثيو" ، "ألكسندر" ، "أندرو") ؛
grepNames = grep (/ ^ A /،myNames) ؛

فكر في صفيفmyNames كصف من المربعات المرقمة ، بدءًا من اليسار إلى اليمين ومرقمة بدءًا من صفر. تمر الدالة grep () عبر كل عنصر (مربعات) في المصفوفة وتقارن محتوياتها بالتعبير العادي. إذا كانت النتيجة صحيحثم تتم إضافة المحتويات إلى الصفيفgrepNames الجديد.

في المثال أعلاه ، يبحث التعبير العادي / ^ A / عن أي قيمة تبدأ برأس مال أ. بعد غربلة محتويات صفيفmyNames ، تصبح قيمةgrepNames ("ألكسندر" ، "أندرو") ، العنصران الوحيدان اللذان يبدأان برأس مال أ.

عكس التعبير في دالة Grep ()

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

instagram viewer
myNames = ("يعقوب" ، "مايكل" ​​، "جوشوا" ، "ماثيو" ، "ألكسندر" ، "أندرو") ؛
grepNames = grep (! / ^ A /،myNames) ؛

في المثال أعلاه ، يبحث التعبير العادي عن أي قيمة لا تبدأ برأس مال أ. بعد غربلة محتويات صفيفmyNames ، تصبح قيمةgrepNames ("يعقوب" ، "مايكل" ​​، "جوشوا" ، "ماثيو").

حول بيرل

بيرل هي لغة برمجة قابلة للتكيف تُستخدم بشكل متكرر لتطوير تطبيقات الويب. تعد لغة Perl لغة مترجمة وليست ترجمة ، لذا تستغرق برامجها وقتًا أطول في وحدة المعالجة المركزية من لغة مجمعة - وهي مشكلة تصبح أقل أهمية مع زيادة سرعة المعالجات. ومع ذلك ، فإن الكتابة في لغة Perl أسرع من الكتابة بلغة مترجمة ، لذا فإن الوقت الذي توفره هو وقتك.

instagram story viewer