البرمجة

استخدام التعبيرات العادية في C# و JavaScript لفحص النصوص

في عالم البرمجة الحديثة، تصبح عمليات فحص ومعالجة النصوص أمرًا حيويًا للكثير من المطورين. يظهر السيناريو الذي وضعته أمامنا، حيث نحتاج إلى التحقق مما إذا كانت سلسلة النص تحتوي على علامات معينة أو حروف خاصة، وهو ما يمكن تحقيقه باستخدام التعبيرات العادية (Regular Expressions).

لنبدأ بتقديم مثال في لغة البرمجة C#:

csharp
using System; using System.Text.RegularExpressions; class Program { static void Main() { string input = "

I need to check string if contains >< /!a-zA-Z or some of them (Also contains space).

"
; // تحديد نمط التعبير العادي للبحث عن الشروط المطلوبة string pattern = @"[><\/!a-zA-Z ]"; // إجراء البحث باستخدام التعبير العادي MatchCollection matches = Regex.Matches(input, pattern); // التحقق إذا كانت هناك مطابقات if (matches.Count > 0) { Console.WriteLine("النص يحتوي على الشروط المطلوبة."); } else { Console.WriteLine("النص لا يحتوي على الشروط المطلوبة."); } } }

هذا الكود يستخدم مكتبة Regex في C# لتحديد ما إذا كانت السلسلة تحتوي على العلامات أو الحروف المطلوبة.

أما في لغة البرمجة JavaScript، يمكننا القيام بالأمر بالشكل التالي:

javascript
// النص الذي نريد فحصه let input = '

I need to check string if contains >< /!a-zA-Z or some of them (Also contains space).

'
; // تعبير عادي للبحث عن الشروط المطلوبة let pattern = /[><\/!a-zA-Z ]/; // التحقق إذا كانت هناك مطابقات if (pattern.test(input)) { console.log('النص يحتوي على الشروط المطلوبة.'); } else { console.log('النص لا يحتوي على الشروط المطلوبة.'); }

يعتمد هذا الكود على تعبيرات الفحص العادية في JavaScript لتحديد وجود الشروط المحددة في النص المعطى.

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

المزيد من المعلومات

عند التعامل مع عمليات معالجة النصوص في مجال البرمجة، يتعين علينا فهم تفاصيل أكثر حول استخدام التعبيرات العادية والتحكم في النصوص. إليك مزيد من المعلومات والنقاط المهمة:

التعبيرات العادية في التفاصيل:

  1. [>
    • [ ]: تعبير يشير إلى مجموعة من الأحرف المسموح بها.
    • ><\/!a-zA-Z: مجموعة من الحروف والرموز المراد بحثها.
    • الرموز ><\/!: تحديد العلامات المطلوبة.
    • a-zA-Z: تحديد الحروف الإنجليزية الكبيرة والصغيرة.
    • فراغ: يتيح التعبير معالجة الفراغات أيضًا.

دور مكتبة Regex:

تكمن قوة استخدام مكتبة Regex في C# في إمكانية تحديد أنماط معقدة بشكل فعال. يمكن توسيع التعبيرات العادية لتناسب الحالات المحددة أو تحديد المزيد من الشروط.

استخدام تعبيرات عادية في JavaScript:

في JavaScript، يمكن استخدام test() للتحقق مما إذا كان يوجد تطابق أو لا. يمكن أيضًا استخدام التعبيرات العادية في دوال أخرى مثل match() و exec() لاسترجاع التطابقات الفعلية.

مقارنة النتائج:

تظهر نتائج التشغيل في كل من C# و JavaScript رسائل توضح ما إذا كان النص يحتوي على الشروط المحددة أم لا.

تكامل مع لغات برمجة أخرى:

هذا المثال ليس مقيدًا بلغات البرمجة المحددة، بل يمكن تكييفه واستخدامه في لغات أخرى مثل Python، Java، وغيرها، باستخدام نهج مشابه باستخدام التعبيرات العادية.

الأمان والأداء:

يفضل دائمًا تحسين أداء عمليات معالجة النصوص عبر اختيار الأساليب الفعّالة وتجنب العمليات الزائدة، خاصة عند التعامل مع مجموعات كبيرة من البيانات.

باختصار، يُظهر هذا المثال كيف يمكن للمطورين تطبيق التعبيرات العادية للتحقق من وجود شروط معينة في النص، مع التركيز على تعديل وتكييف الشيفرة حسب احتياجات المشروع.

زر الذهاب إلى الأعلى