باحث الأنماط
جزء من قسم الأساسيات في رحلة GDScript على Coddy. الدرس 91 من 92.
التحدي
متوسطاكتب الدالة find_occurrences قبل _ready(). وهي:
- تأخذ سلسلتين نصيتين:
textوpattern - تحسب عدد مرات ظهور
patternفيtext، بما في ذلك مرات الظهور المتداخلة - تعيد مصفوفة تتكون من ثلاثة عناصر:
trueإذا عُثر على النمط، وfalseخلاف ذلك- عدد مرات الظهور
- مصفوفة تحتوي على موضع بداية كل مرة ظهور
على سبيل المثال، إذا كانت قيمة text هي "abababab" وكانت قيمة pattern هي "aba"، فستُعيد الدالة [true, 3, [0, 2, 4]]، لأن "aba" تبدأ عند المواضع 0 و2 و4.
إذا لم يُعثر على النمط، فأعِد [false, 0, []].
تقرأ الدالة _ready() المعطاة السلسلتين، وتستدعي دالتك، ثم تطبع النتيجة. استبدل pass بجسم الدالة.
جرّب بنفسك
extends Node
func find_occurrences(text, pattern):
# اكتب الكود الخاص بك هنا
pass
func _ready():
var text := OS.read_string_from_stdin()
var pattern := OS.read_string_from_stdin()
# استدعِ الدالة واطبع النتيجة
var result = find_occurrences(text, pattern)
print(result)
جميع دروس الأساسيات
4المعاملات، الجزء الأول
المعاملات الحسابيةالقسمة الصحيحةمعامل باقي القسمةاختصارات العمليات الحسابيةمراجعة - حسابات بسيطةمعاملات المقارنة7أساسيات الإدخال والإخراج
الإخراجالإخراج باستخدام المتغيراتتنسيق السلاسل النصيةالإدخالالتحويل بين الأنواعمراجعة - حتى 120مراجعة - صح أم خطأ10الدوال
تعريف دالةالمعاملاتالقيمة المعادةأنواع القيم المعادةمراجعة - دالة سيغمامراجعة - دالة التحققالقيم الافتراضية13التكرار على المصفوفات
التكرار على العناصرالتكرار باستخدام الفهارسالتكرار على السلاسل النصية الجزء 1التكرار على السلاسل النصية الجزء 216متعقّب المصروفات اليومية
نظرة عامة على المشروعإنهاء البرنامجتدرّب بنفسك: مترجم GDScript عبر الإنترنت