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

Javaالتحدي الثاني - حل التمرين الأول بلغة بايثون

المطلوب

قم بتعريف دالة إسمها RemoveAll, عند استدعاءها نمرر لها نصيّن, فترجع نسخة من النص لا تحتوي على النص الثاني.
بعدها قم بتجربة هذه الدالة في البرنامج.

مثال: إذا قمنا باستخدام الدالة RemoveAll() و تمرير النص "I like cats. I have one cat." و الكلمة "cat" لها فإنها سترجع النص "I like s. I have one .".


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

def remove_all(s1, s2):

    s1_length = len(s1)
    s2_length = len(s2)
    new_string = ''

    i = 0
    while i < s1_length:

        if i <= s1_length - s2_length and s1[i: i + s2_length] == s2:
            i += s2_length

        else:
            new_string += s1[i]
            i += 1

    return new_string


text = "I like cats. I have one cat."
keyword = "cat"
newText = remove_all(text, keyword)

print("Before:", text)
print("After: ", newText)

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

Before: I like cats. I have one cat.
After:  I like s. I have one .