تحديات برمجيةالتحدي الثالث - حل التمرين الثاني بلغة C#
المطلوب
قم بتعريف دالة إسمها CountNoneEscapeChars
, عند استدعاءها نمرر لها نص, فترجع عدد الأحرف الموجودة في هذا النص.
ملاحظة: أي حرف يعتبر Escape Character مثل الأحرف \t
و \n
إلخ.. لا يجب أن يتم حساب عددهم ضمن عدد الأحرف.
يمكنك إستخدام الـ Regex للتمييز بين الأحرف العادية و الأحرف التي تعتبر Escape Characters.
مثال: إذا قمنا باستخدام الدالة CountNoneEscapeChars()
و تمرير النص "Hi Lora.\nHow are you?."
فإنها سترجع الرقم 18.
الحل بلغة C#
using System; using System.Text.RegularExpressions; class Program { static void Main(string[] args) { string text = "Hi Lora.\nHow are you?."; int numberOfNoneEscapeChars = CountNoneEscapeChars(text); Console.Write("Total characters: " + numberOfNoneEscapeChars); Console.ReadKey(); } static int CountNoneEscapeChars(String s) { if (string.IsNullOrEmpty(s)) { return 0; } int count = 0; for (int i = 0; i < s.Length; i++) { if(Regex.IsMatch(""+ s[i], "\\S")) { count++; } } return count; } }
سنحصل على النتيجة التالية عند التشغيل.
Total characters: 18