Programming Basics SQL HTML CSS JavaScript Python C++ Java JavaFX Swing Problem Solving English English Conversations Computer Fundamentals 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;
}
}
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