Programming Basics SQL HTML CSS JavaScript React Python C++ Java JavaFX Swing Problem Solving English English Conversations Computer Fundamentals Linux Learn Typing

تحديات برمجيةالتحدي الثالث - حل التمرين الثاني بلغة 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