الفرق بين المراجعتين لصفحة: «Kotlin/kotlin.text/takeWhile»

من موسوعة حسوب
ط استبدال النص - 'Kotlin Functions' ب'Kotlin Function'
مراجعة وتدقيق.
 
سطر 1: سطر 1:
<noinclude>{{DISPLAYTITLE: الدالة <code>text.takeWhile()‎</code> في لغة Kotlin}}</noinclude>
<noinclude>{{DISPLAYTITLE: الدالة <code>takeWhile()‎</code> في Kotlin}}</noinclude>
تعيد  الدالة <code>takeWhile()‎</code> جزءًا من [[Kotlin/CharSequence/index|سلسلة الحروف]] أو [[Kotlin/String|السلسلة النصية]] التي استُدعيت عبرها والذي يحتوي الحروف الأولى التي تحقق الشرط المنطقي المُمرّر <code>predicate</code>.   
تجلب الدالة <code>takeWhile()‎</code> أول عناصر محققة لشرطٍ محدَّدٍ من <nowiki/>[[Kotlin/CharSequence|سلسلة المحارف]] أو [[Kotlin/String|السلسلة النصية]] التي استُدعيت معها.   
==البنية العامة==
==البنية العامة==
<syntaxhighlight lang="kotlin">
<syntaxhighlight lang="kotlin">
سطر 9: سطر 9:
     predicate: (Char) -> Boolean
     predicate: (Char) -> Boolean
): String  
): String  
</syntaxhighlight>يُلاحَظ وجود الكلمة المفتاحية <code>inline</code> للدلالة على أن هذه الدالة مباشرة، وللمزيد من التفاصيل راجع <nowiki/>[[Kotlin/inline functions|توثيق الدوال المباشرة (inline functions)]].
</syntaxhighlight>يُلاحَظ وجود الكلمة المفتاحية <code>inline</code> التي تدل على أن هذه الدالة مباشرة (للمزيد من التفاصيل، راجع صفحة <nowiki/>[[Kotlin/inline functions|الدوال المباشرة (inline functions)]]).
 
== المعاملات ==
 
=== <code>predicate</code> ===
دالةٌ تطبق على كل محرف من محارف [[Kotlin/CharSequence|سلسلة المحارف]] أو [[Kotlin/String|السلسلة النصية]] المعطاة. يمرر إليها كل محرف على حدة ثم تعيد قيمة منطقية مقابلة له.


==القيم المعادة==
==القيم المعادة==
[[Kotlin/String|سلسلة نصية]] أو [[Kotlin/CharSequence/index|سلسلة حروف]].  
تعاد [[Kotlin/CharSequence/index|سلسلة من المحارف]] أو [[Kotlin/String|سلسلة نصية]] تحوي العناصر الأولى المحققة للشرط <code>predicate</code> المعطى من <nowiki/>[[Kotlin/CharSequence|سلسلة المحارف]] أو [[Kotlin/String|السلسلة النصية]] المعطاة.  
==أمثلة==
==أمثلة==
===استخدام الدالة <code>()takeWhile</code> مع سلسلة نصية===
مثالٌ على استعمال الدالة <code>()takeWhile</code><nowiki/>:<syntaxhighlight lang="kotlin">
تعرِّف الشيفرة الآتية  [[Kotlin/String|سلسلة نصية]] باسم <code>str</code>، ثمَّ تستدعي الدالة  <code>()takeWhile</code> عبرها مع تمرير دالة كوسيط، <nowiki/>ثمَّ تطبع الناتج:<syntaxhighlight lang="kotlin">
fun main(args: Array<String>) {
fun main(args: Array<String>) {
val str = "Wiki.Wsoub.Wom"
    val str = "Wiki.Wsoub.Wom"
      
 
println(str.takeWhile {it.isLetter()} ) // Wiki
     println(str.takeWhile { it.isLetter() }) // Wiki
println(str.takeWhile {it.isUpperCase()}) // W
    println(str.takeWhile { it.isUpperCase() }) // W
}
}
</syntaxhighlight>
</syntaxhighlight>
==انظر أيضًا==
==انظر أيضًا==
* <code>[[Kotlin/kotlin.text/takeLast|takeLast()]]</code>: تعيد  الدالة <code>takeLast()‎</code> جزءًا من [[Kotlin/CharSequence/index|سلسلة الحروف]] أو [[Kotlin/String|السلسلة النصية]] التي استُدعيت عبرها والذي يحتوي آخر <code>n</code> حرفًا منها، أو تعيدها كاملة إن كان طولها أصغر من العدد <code>n</code>. 
*الدالة <code>[[Kotlin/kotlin.text/take|take()]]</code>: تجلب أول <code>n</code> محرف من [[Kotlin/CharSequence|سلسلة المحارف]] أو [[Kotlin/String|السلسلة النصية]] التي استُدعيت معها وتضعها في قائمة.  
* <code>[[Kotlin/kotlin.text/take|take()]]‎</code>: تعيد الدالة <code>take()‎</code> جزءًا من سلسلة الحروف أو السلسلة النصية التي استُدعيت عبرها والذي يحتوي أول <code>n</code> حرفًا منها، أو تعيدها كاملة إن كان طولها أصغر من العدد <code>n</code>.
*الدالة <code>[[Kotlin/kotlin.text/takeLast|takeLast()]]‎</code>: تجلب آخر <code>n</code> محرف من [[Kotlin/CharSequence|سلسلة المحارف]] أو [[Kotlin/String|السلسلة النصية]] التي استُدعيت معها وتضعها في قائمة.
* <code>[[Kotlin/kotlin.text/substringBefore|substringBefore()]]</code>: تعيد  الدالة <code>substringBefore()‎</code> جزءًا من [[Kotlin/String|السلسلة النصية]] التي استُدعيت عبرها والمُتواجد قبل أول ظهور للمُحدِّد <code>delimiter،</code> إن لم تكن [[Kotlin/String|السلسلة النصية]] الأصلية تحتوي <code>delimiter</code>، فستعيد القيمة المُمرّرة <code>missingDelimiterValue</code>، والتي قيمتها الافتراضية هي [[Kotlin/String|السلسلة النصية]] الأصلية. 
*الدالة <code>[[Kotlin/kotlin.text/takeLastWhile|takeLastWhile()]]</code>: تجلب آخر عناصر محققة لشرطٍ محدَّدٍ من <nowiki/>[[Kotlin/CharSequence|سلسلة المحارف]] أو [[Kotlin/String|السلسلة النصية]] التي استُدعيت معها.
 
* الدالة <code>[[Kotlin/kotlin.text/substring|substring()‎]]</code>: تعيد جزءًا محددًا من السلسلة النصية أو <nowiki/>[[Kotlin/CharSequence/index|سلسلة المحارف]] التي استُدعيت معها.
* <code>[[Kotlin/kotlin.text/removeSuffix|removeSuffix()]]‎</code>: إن كانت [[Kotlin/String|السلسلة النصية]] أو [[Kotlin/CharSequence/index|سلسلة الحروف]] التي استٌدعيت عبرها الدالة <code>removeSuffix()‎</code> تنتهي باللاحقة <code>suffix</code> فستعيد [[Kotlin/String|سلسلة نصية]] أو [[Kotlin/CharSequence/index|سلسلة حروف]] جديدة مع حذف تلك اللاحقة، وإلا فستعيد [[Kotlin/String|السلسلة النصية]] أو [[Kotlin/CharSequence/index|سلسلة الحروف]] كما هي. 
* الدالة <code>[[Kotlin/kotlin.text/slice|slice()]]‎</code>: تقتطع جزءًا محدَّدًا من <nowiki/>[[Kotlin/CharSequence/index|سلسلة المحارف]] أو السلسلة النصية  التي استُدعيت معها ثمَّ تعيده.
* <code>[[Kotlin/kotlin.text/slice|slice()]]‎</code>: تعيد  الدالة <code>slice()‎</code> [[Kotlin/CharSequence/index|سلسلة حروف]] أو [[Kotlin/String|سلسلة نصية]] جديدة تحتوي الحروف التي تنتمي فهارسها إلى الوسيط المُمرر. 
* الدالة <code>[[Kotlin/kotlin.text/split|split()‎]]</code>: تقتطع المحارف الموجودة بين الأجزاء المتطابقة مع <nowiki/>[[Kotlin/kotlin.text/Regex|تعبير نمطي]] معين أو بين سلاسل نصية أو محارف معينة في <nowiki/>[[Kotlin/CharSequence|سلسلة المحارف]] الممررة إليها وتعيدها في قائمة.
 
* الدالة <code>[[Kotlin/kotlin.text/substringAfter|substringAfter()]]‎</code>: تجلب كل الجزء الواقع بعد أول ظهور <nowiki/>[[Kotlin/Char|لمحرف]] أو لسلسلة نصية معينة في سلسلة نصية.
==مصادر==
==مصادر==
*[http://kotlinlang.org/api/latest/jvm/stdlib/kotlin.text/take-while.html الدالة text.takeWhile()‎ في التوثيق الرسميّ للمكتبة القياسيّة في لغة Kotlin.]
*[http://kotlinlang.org/api/latest/jvm/stdlib/kotlin.text/take-while.html صفحة الدالة takeWhile()‎ في التوثيق الرسميّ للمكتبة القياسيّة في لغة Kotlin.]
[[تصنيف:Kotlin]]
[[تصنيف:Kotlin]]
[[تصنيف:Kotlin Function]]
[[تصنيف:Kotlin Function]]
[[تصنيف:Kotlin Text]]

المراجعة الحالية بتاريخ 04:30، 6 سبتمبر 2018

تجلب الدالة takeWhile()‎ أول عناصر محققة لشرطٍ محدَّدٍ من سلسلة المحارف أو السلسلة النصية التي استُدعيت معها.

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

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

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

المعاملات

predicate

دالةٌ تطبق على كل محرف من محارف سلسلة المحارف أو السلسلة النصية المعطاة. يمرر إليها كل محرف على حدة ثم تعيد قيمة منطقية مقابلة له.

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

تعاد سلسلة من المحارف أو سلسلة نصية تحوي العناصر الأولى المحققة للشرط predicate المعطى من سلسلة المحارف أو السلسلة النصية المعطاة.

أمثلة

مثالٌ على استعمال الدالة ()takeWhile:

fun main(args: Array<String>) {
    val str = "Wiki.Wsoub.Wom"

    println(str.takeWhile { it.isLetter() }) // Wiki
    println(str.takeWhile { it.isUpperCase() }) // W
}

انظر أيضًا

مصادر