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.


الحل بلغة بايثون

import re


def count_none_escape_chars(s):

    if not s:
        return 0

    counter = 0

    for i in range(0, len(s)):
        if re.match('\S', s[i]):
            counter += 1

    return counter


text = "Hi Lora.\nHow are you?."
number_of_none_escape_chars = count_none_escape_chars(text)

print("Total characters:", number_of_none_escape_chars)

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

Total characters: 18