الدالة text.takeWhile()‎ في لغة Kotlin

من موسوعة حسوب
مراجعة 11:37، 30 أغسطس 2018 بواسطة عبد اللطيف ايمش (نقاش | مساهمات) (استبدال النص - 'Kotlin Functions' ب'Kotlin Function')

تعيد الدالة takeWhile()‎ جزءًا من سلسلة الحروف أو السلسلة النصية التي استُدعيت عبرها والذي يحتوي الحروف الأولى التي تحقق الشرط المنطقي المُمرّر predicate.

البنية العامة

inline fun CharSequence.takeWhile(
    predicate: (Char) -> Boolean
): CharSequence
inline fun String.takeWhile(
    predicate: (Char) -> Boolean
): String

يُلاحَظ وجود الكلمة المفتاحية inline للدلالة على أن هذه الدالة مباشرة، وللمزيد من التفاصيل راجع توثيق الدوال المباشرة (inline functions).

القيم المعادة

سلسلة نصية أو سلسلة حروف.

أمثلة

استخدام الدالة ()takeWhile مع سلسلة نصية

تعرِّف الشيفرة الآتية سلسلة نصية باسم str، ثمَّ تستدعي الدالة ()takeWhile عبرها مع تمرير دالة كوسيط، ثمَّ تطبع الناتج:

fun main(args: Array<String>) {
val str = "Wiki.Wsoub.Wom"
    
println(str.takeWhile {it.isLetter()} ) // Wiki
println(str.takeWhile  {it.isUpperCase()}) // W
}

انظر أيضًا

  • takeLast(): تعيد الدالة takeLast()‎ جزءًا من سلسلة الحروف أو السلسلة النصية التي استُدعيت عبرها والذي يحتوي آخر n حرفًا منها، أو تعيدها كاملة إن كان طولها أصغر من العدد n
  • take(): تعيد الدالة take()‎ جزءًا من سلسلة الحروف أو السلسلة النصية التي استُدعيت عبرها والذي يحتوي أول n حرفًا منها، أو تعيدها كاملة إن كان طولها أصغر من العدد n.
  • substringBefore(): تعيد الدالة substringBefore()‎ جزءًا من السلسلة النصية التي استُدعيت عبرها والمُتواجد قبل أول ظهور للمُحدِّد delimiter، إن لم تكن السلسلة النصية الأصلية تحتوي delimiter، فستعيد القيمة المُمرّرة missingDelimiterValue، والتي قيمتها الافتراضية هي السلسلة النصية الأصلية. 

مصادر