الفرق بين المراجعتين ل"Kotlin/kotlin.text/takeLastWhile"

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

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

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

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

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

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

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

المعاملات

predicate

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

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

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

أمثلة

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

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

    println(str.takeLastWhile { it.isLetter() }) // Com
    println(str.takeLastWhile { it.isLowerCase() }) // om
}

انظر أيضًا

مصادر