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

تحديات برمجيةالتحدي الثالث - حل التمرين الثاني بلغة جافا

المطلوب

قم بتعريف دالة إسمها CountNoneEscapeChars, عند استدعاءها نمرر لها نص, فترجع عدد الأحرف الموجودة في هذا النص.
ملاحظة: أي حرف يعتبر Escape Character مثل الأحرف \t و \n إلخ.. لا يجب أن يتم حساب عددهم ضمن عدد الأحرف.
يمكنك إستخدام الـ Regex للتمييز بين الأحرف العادية و الأحرف التي تعتبر Escape Characters.

مثال: إذا قمنا باستخدام الدالة CountNoneEscapeChars() و تمرير النص "Hi Lora.\nHow are you?." فإنها سترجع الرقم 18.


الحل بلغة جافا

public class Main {

    public static void main(String[] args) {

        String text = "Hi Lora.\nHow are you?.";
        int numberOfNoneEscapeChars = countNoneEscapeChars(text);

        System.out.println("Total characters: " + numberOfNoneEscapeChars);

    }

    public static int countNoneEscapeChars(String s) {

        if (s == null || s.isEmpty()) {
            return 0;
        }
        
        int counter = 0;
        
        for (int i = 0; i < s.length(); i++)
        {
            if ((""+s.charAt(i)).matches("\\S"))
            {
                counter++;
            }
        }
        
        return counter;
    }

}

سنحصل على النتيجة التالية عند التشغيل.

Total characters: 18