التكرار على السلاسل النصية - الجزء 2
جزء من قسم الأساسيات في رحلة Kotlin على Coddy. الدرس 77 من 93.
بالإضافة إلى التكرار الأساسي، توفر السلاسل النصية عدة أساليب مفيدة لإنشاء سلاسل نصية جديدة من سلاسل موجودة. تتمثل إحدى المهام الشائعة في تحويل الأحرف أثناء التكرار وتجميع النتائج.
يمكنك إنشاء سلسلة نصية جديدة عن طريق إلحاق الأحرف بـ StringBuilder أو ببساطة دمجها مع متغير سلسلة نصية:
val original = "hello"
var result = ""
for (char in original) {
result += char.uppercaseChar()
}
println(result) // HELLOتحوّل الطريقة uppercaseChar() حرفًا واحدًا إلى أحرف كبيرة، بينما تفعل lowercaseChar() العكس. تعمل هاتان الطريقتان على قيم Char الفردية، بخلاف uppercase() التي تعمل على سلاسل نصية كاملة.
تقنية عملية أخرى هي تصفية الأحرف أثناء التكرار. على سبيل المثال، استخراج الأرقام فقط من سلسلة نصية مختلطة:
val mixed = "a1b2c3"
var digits = ""
for (char in mixed) {
if (char.isDigit()) {
digits += char
}
}
println(digits) // 123توفر Kotlin طرقًا مفيدة للتحقق من الأحرف مثل isDigit() وisLetter() وisWhitespace()، والتي تُرجع true أو false استنادًا إلى نوع الحرف. وتسهّل هذه الطرق تصفية الأحرف أو تصنيفها أثناء التكرار.
التحدي
متوسطاكتب دالة extractLetters تأخذ سلسلة نصية text وتُرجع سلسلة جديدة تحتوي على الأحرف فقط، بعد تحويلها إلى أحرف كبيرة.
كرّر العملية على كل حرف، واستبعد الأحرف غير الأبجدية، وحوّل الأحرف المتبقية إلى أحرف كبيرة.
المعلمات:
text(String): سلسلة نصية قد تحتوي على أحرف وأرقام ومسافات وأحرف خاصة
القيمة المُعادة: سلسلة نصية تحتوي على الأحرف فقط من الإدخال، بعد تحويلها جميعًا إلى أحرف كبيرة (String)
جرّب بنفسك
fun extractLetters(text: String): String {
// اكتب الكود هنا
}
يتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.
جميع دروس الأساسيات
4العوامل - الجزء الأول
العوامل الحسابيةعامل باقي القسمةالإسناد المُعزَّزعوامل المقارنةمراجعة - الرياضيات البسيطة7أساسيات الإدخال والإخراج
دالة Printlnقوالب السلاسل النصيةإدخال ReadLineتحويل النوعمراجعة - السنوات حتى التقاعدمراجعة - صواب أم خطأ10الدوال
تعريف دالةالمعاملات والوسائطالقيم المُعادةالوسائط المُسمّاةالقيم الافتراضيةالدوال ذات التعبير الواحدمراجعة - دالة سيغمامراجعة - دالة التحقق13التكرار على التسلسلات
التكرار على العناصرطريقة WithIndexالتكرار على السلاسل النصية - الجزء 1التكرار على السلاسل النصية - الجزء 2مراجعة - الأحرف المفهرسة2المتغيرات
val مقابل varاستنتاج النوعالأعدادالسلسلة النصيةالقيمة المنطقيةاصطلاحات التسميةمراجعة - تهيئة المتغيرات5المعاملات الجزء 2
المعاملات المنطقية الجزء 1المعاملات المنطقية الجزء 2المعاملات المنطقية الجزء 3المعامل الثلاثي مع تعبير Ifمراجعة - المنطق البسيط8حاسبة تقسيم الفاتورة
رسالة ترحيبيةالحصول على الإدخال3القابلية للقيمة الفارغة
ما هو الأمان من القيم الفارغةالأنواع القابلة للقيمة الفارغةعامل الاستدعاء الآمنعامل Elvisأساسيات تحدي الدوالتأكيد عدم كون القيمة فارغةمراجعة - الوصول الآمن9الحلقات
حلقة Forحلقة Whileحلقة Do-WhileBreakContinueالنطاقات في الحلقاتالحلقة المتداخلةمراجعة - المضروبمراجعة - الإدخال الديناميكيتدرّب بنفسك: Playground لـ Kotlin