الفرق بين المراجعتين لصفحة: «Kotlin/kotlin.text/filter»
< Kotlin | kotlin.text
لا ملخص تعديل |
جميل-بيلوني (نقاش | مساهمات) طلا ملخص تعديل |
||
(مراجعتان متوسطتان بواسطة مستخدمين اثنين آخرين غير معروضتين) | |||
سطر 1: | سطر 1: | ||
<noinclude>{{DISPLAYTITLE: الدالة <code> | <noinclude>{{DISPLAYTITLE: الدالة <code>filter()</code> في Kotlin}}</noinclude> | ||
ترشِّح الدالة <code>filter()</code> محارف <nowiki/>[[Kotlin/CharSequence/index|سلسلة المحارف]] أو [[Kotlin/String|السلسلة النصية]] المعطاة بناءً على قيمة المحرف التي تحقِّق شرطًا معيَّنًا. | |||
==البنية العامة== | ==البنية العامة== | ||
<syntaxhighlight lang="kotlin"> | <syntaxhighlight lang="kotlin"> | ||
سطر 10: | سطر 10: | ||
predicate: (Char) -> Boolean | predicate: (Char) -> Boolean | ||
): String | ): String | ||
</syntaxhighlight> | </syntaxhighlight>وجود الكلمة المفتاحية <code>inline</code> يدل على أن هذه الدالة مباشرة (لمزيد من التفاصيل، راجع <nowiki/>[[Kotlin/inline functions|توثيق الدوال المباشرة]]). | ||
== المعاملات == | |||
=== <code>predicate</code> === | |||
دالةٌ تمثل الشرط المراد تطبيقه على كل محرف من محارف [[Kotlin/String|السلسلة النصية]] أو [[Kotlin/CharSequence/index|سلسلة المحارف]] المعطاة. يمرر إلى هذه الدالة محرفٌ وتعيد قيمة منطقية. | |||
==القيم المعادة== | ==القيم المعادة== | ||
[[Kotlin/CharSequence/index|سلسلة | تُعاد <nowiki/>[[Kotlin/CharSequence/index|سلسلة من المحارف]] أو [[Kotlin/String|سلسلة نصية]] تحوي المحارف التي أعيدت القيمة <code>true</code> معها عند تطبيق الدالة <code>predicate</code> عليها. | ||
==أمثلة== | ==أمثلة== | ||
مثالٌ على استعمال الدالة <code>()filter</code>:<syntaxhighlight lang="kotlin"> | |||
fun main(args: Array<String>) { | fun main(args: Array<String>) { | ||
val str = " | val str = "abcdefabc" | ||
println(str.filter {it<' | println(str.filter { it < 'd' }) // abcabc | ||
} | } | ||
</syntaxhighlight> | </syntaxhighlight> | ||
==انظر أيضًا== | ==انظر أيضًا== | ||
* | *الدالة [[Kotlin/kotlin.text/filterTo|<code>filterTo()</code>]]: تشبه الدالة <code>filter()</code> تمامًا باستثناء أنها تضيف الناتج إلى كائن موجود مسبقًا بدلًا من أن تعيده. | ||
*الدالة <code>[[Kotlin/kotlin.text/filterIndexed|filterIndexed()]]</code>: ترشِّح محارف <nowiki/>[[Kotlin/CharSequence/index|سلسلة المحارف]] أو [[Kotlin/String|السلسلة النصية]] المعطاة بناءً على فهرس المحرف وقيمته. | |||
* <code>[[Kotlin/kotlin.text/filterIndexedTo|filterIndexedTo()]]</code>: | *الدالة <code>[[Kotlin/kotlin.text/filterIndexedTo|filterIndexedTo()]]</code>: تشبه الدالة [[Kotlin/kotlin.text/filterIndexed|<code>filterIndexed()</code>]] تمامًا باستثناء أنها تضيف الناتج إلى كائن موجود مسبقًا بدلًا من أن تعيده. | ||
*الدالة <code>[[Kotlin/kotlin.text/filterNot|filterNot()]]</code>: ترشِّح محارف <nowiki/>[[Kotlin/CharSequence/index|سلسلة المحارف]] أو [[Kotlin/String|السلسلة النصية]] المعطاة بناءً على قيمة المحرف التي '''لم''' تحقِّق شرطًا معيَّنًا. | |||
* <code>[[Kotlin/kotlin.text/ | *الدالة [[Kotlin/kotlin.text/filterNotTo|<code>filterNotTo()</code>]]: تشبه الدالة [[Kotlin/kotlin.text/filterNot|<code>filterNot()</code>]] تمامًا باستثناء أنها تضيف الناتج إلى كائن موجود مسبقًا بدلًا من أن تعيده. | ||
* <code>[[Kotlin/kotlin.text/ | |||
* الدالة <code>[[Kotlin/kotlin.text/find|find()]]</code>: تبحث على محرف يحقق شرطًا محدَّدًا ضمن محارف <nowiki/>[[Kotlin/CharSequence|السلسلة]] التي استُدعيت معها ثمَّ تعيد أول ظهور له. | |||
* الدالة <code>[[Kotlin/kotlin.text/dropWhile|dropWhile()]]</code>: تُزيِل المحارف الأولى المحققة لشرط معين من محارف السلسلة النصية أو <nowiki/>[[Kotlin/CharSequence/index|سلسلة المحارف]] التي استُدعيت معها. | |||
==مصادر== | ==مصادر== | ||
*[http://kotlinlang.org/api/latest/jvm/stdlib/kotlin.text/filter.html الدالة | *[http://kotlinlang.org/api/latest/jvm/stdlib/kotlin.text/filter.html صفحة الدالة filter() في التوثيق الرسميّ للمكتبة القياسيّة في لغة Kotlin.] | ||
[[تصنيف:Kotlin]] | [[تصنيف:Kotlin]] | ||
[[تصنيف:Kotlin | [[تصنيف:Kotlin Function]] | ||
[[تصنيف:Kotlin Text]] |
المراجعة الحالية بتاريخ 09:02، 3 سبتمبر 2018
ترشِّح الدالة filter()
محارف سلسلة المحارف أو السلسلة النصية المعطاة بناءً على قيمة المحرف التي تحقِّق شرطًا معيَّنًا.
البنية العامة
inline fun CharSequence.filter(
predicate: (Char) -> Boolean
): CharSequence
inline fun String.filter(
predicate: (Char) -> Boolean
): String
وجود الكلمة المفتاحية inline
يدل على أن هذه الدالة مباشرة (لمزيد من التفاصيل، راجع توثيق الدوال المباشرة).
المعاملات
predicate
دالةٌ تمثل الشرط المراد تطبيقه على كل محرف من محارف السلسلة النصية أو سلسلة المحارف المعطاة. يمرر إلى هذه الدالة محرفٌ وتعيد قيمة منطقية.
القيم المعادة
تُعاد سلسلة من المحارف أو سلسلة نصية تحوي المحارف التي أعيدت القيمة true
معها عند تطبيق الدالة predicate
عليها.
أمثلة
مثالٌ على استعمال الدالة ()filter
:
fun main(args: Array<String>) {
val str = "abcdefabc"
println(str.filter { it < 'd' }) // abcabc
}
انظر أيضًا
- الدالة
filterTo()
: تشبه الدالةfilter()
تمامًا باستثناء أنها تضيف الناتج إلى كائن موجود مسبقًا بدلًا من أن تعيده. - الدالة
filterIndexed()
: ترشِّح محارف سلسلة المحارف أو السلسلة النصية المعطاة بناءً على فهرس المحرف وقيمته. - الدالة
filterIndexedTo()
: تشبه الدالةfilterIndexed()
تمامًا باستثناء أنها تضيف الناتج إلى كائن موجود مسبقًا بدلًا من أن تعيده. - الدالة
filterNot()
: ترشِّح محارف سلسلة المحارف أو السلسلة النصية المعطاة بناءً على قيمة المحرف التي لم تحقِّق شرطًا معيَّنًا. - الدالة
filterNotTo()
: تشبه الدالةfilterNot()
تمامًا باستثناء أنها تضيف الناتج إلى كائن موجود مسبقًا بدلًا من أن تعيده.
- الدالة
find()
: تبحث على محرف يحقق شرطًا محدَّدًا ضمن محارف السلسلة التي استُدعيت معها ثمَّ تعيد أول ظهور له. - الدالة
dropWhile()
: تُزيِل المحارف الأولى المحققة لشرط معين من محارف السلسلة النصية أو سلسلة المحارف التي استُدعيت معها.