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

من موسوعة حسوب
لا ملخص تعديل
مراجعة وتدقيق.
 
(مراجعة متوسطة واحدة بواسطة مستخدم واحد آخر غير معروضة)
سطر 1: سطر 1:
<noinclude>{{DISPLAYTITLE: الدالة <code>text.trimMargin()‎</code> في لغة Kotlin}}</noinclude>
<noinclude>{{DISPLAYTITLE: الدالة <code>trimMargin()‎</code> في Kotlin}}</noinclude>
تمحو  الدالة <code>trimMargin()‎</code> الإزاحة المشتركة والمتبوعة بالقيمة المحددة <code>marginPrefix</code> من جميع أسطر [[Kotlin/String|السلسلة النصية]] التي استُدعيت عبرها، كما تمحو السطر الأول والأخير إن كانا بيضاوين (blanks)، أي مُكوّنان من مسافات بيضاء (whitespaces).   
تحذف الدالة <code>trimMargin()‎</code> جميع المحارف البيضاء البادئة المتبوعة بقيمة محددة من جميع أسطر [[Kotlin/String|السلسلة النصية]] التي استُدعيت معها، كما تحذف السطر الأول والأخير إن كانا فارغين (blanks)؛ أي مُكوّنان من مسافات بيضاء (whitespaces).   


لا تؤثر الدالةُ في الاسطر التي لا تحتوي <code>marginPrefix</code>، باستثناء الأسطر البيضاء الأولى والأخيرة
لا تؤثر الدالةُ على الاسطر التي لا تحوي القيمة المحددة بالمعامل <code>marginPrefix</code> المعطى، باستثناء الأسطر البيضاء الأولى والأخيرة.   
 
<code>marginPrefix</code> [[Kotlin/String|سلسلة نصية]] غير بيضاء والذي يُستخدم كمحدد للهامش، قيمته الابتدائية هي <code>|</code>.   
==البنية العامة==
==البنية العامة==
<syntaxhighlight lang="kotlin">
<syntaxhighlight lang="kotlin">
سطر 10: سطر 8:


</syntaxhighlight>
</syntaxhighlight>
== المعاملات ==
=== <code>marginPrefix</code> ===
[[Kotlin/String|سلسلة نصية]] غير فارغة -أي لا تحوي أية مسافة بيضاة- تستعمل كمحدد للهامش المراد حذفه. القيمة الافتراضية هي: <code>|</code> (محرف الأنبوب [pipe character]).
==القيم المعادة==
==القيم المعادة==
[[Kotlin/String|سلسلة نصية]].  
تعاد [[Kotlin/String|سلسلة نصية]] تحوي جميع محتويات السلسلة النصية المعطاة بعد حذف جميع المحارف البيضاء البادئة المتبوعة بالقيمة المحددة بالمعامل <code>marginPrefix</code> من جميع أسطرها، كما تحذف السطر الأول والأخير إن كانا فارغين.  
==أمثلة==
==أمثلة==
===استخدام الدالة <code>()trimMargin</code> مع سلسلة نصية===
مثالٌ على استعمال الدالة <code>()trimMargin</code><nowiki/>:<syntaxhighlight lang="kotlin">
تستدعي الشيفرة الآتية الدالة  <code>()trimMargin</code> عبر [[Kotlin/String|سلسلتين نصية]] وتمرّر القيمة المُعادة إلى المتغيرين <code>withoutMargin2</code> و <code>withoutMargin1</code>، ثم <nowiki/>تطبع الناتج:<syntaxhighlight lang="kotlin">
import java.util.*
 
fun main(args: Array<String>) {
fun main(args: Array<String>) {
val withoutMargin1 = """ABC
    val withoutMargin1 = """ABC
                 |123
                 |123
                 |456""".trimMargin()
                 |456""".trimMargin()
println(withoutMargin1) // ABC\n123\n456
    println(withoutMargin1) // ABC\n123\n456


val withoutMargin2 = """
    val withoutMargin2 = """
     #XYZ
     #XYZ
     #foo
     #foo
     #bar
     #bar
""".trimMargin("#")
""".trimMargin("#")
println(withoutMargin2) // XYZ\nfoo\nbar
    println(withoutMargin2) // XYZ\nfoo\nbar
}
}
</syntaxhighlight>
</syntaxhighlight>
==انظر أيضًا==
==انظر أيضًا==
* <code>[[Kotlin/kotlin.text/trimEnd|trimEnd()]]‎</code>: تعيد  الدالة <code>trimEnd()‎</code> جزءًا من [[Kotlin/CharSequence/index|سلسلة الحروف]] التي استُدعيت عبرها بعد حذف الأحرف الأخيرة التي تحقق الشرط المنطقي المُحدّد <code>predicate.</code>
*الدالة <code>[[Kotlin/kotlin.text/trim|trim()]]</code>: تحذف المحارف المحققة لشرط معين، أو محارف محددة، أو المسافات الفارغة من بداية ونهاية [[Kotlin/CharSequence|سلسلة المحارف]] أو [[Kotlin/String|السلسلة النصية]] التي استُدعيت معها.
* <code>[[Kotlin/kotlin.text/trim|trim()]]</code>: تعيد  الدالة <code>trim()‎</code> جزءًا من [[Kotlin/CharSequence/index|سلسلة الحروف]] أو [[Kotlin/String|السلسلة النصية]] التي استُدعيت عبرها بعد حذف الأحرف الأولى والأخيرالتي تحقق الشرط المنطقي المُحدّد <code>predicate.</code>
 
* <code>[[Kotlin/kotlin.text/substringAfter|substringAfter()]]‎</code>: تعيد  الدالة <code>substringAfter()‎</code> جزءًا من [[Kotlin/String|السلسلة النصية]] التي استُدعيت عبرها والمُتواجد بعد أول ظهور للمُحدِّد <code>delimiter،</code> إن لم تكن [[Kotlin/String|السلسلة النصية]] الأصلية تحتوي <code>delimiter</code>، فستعيد القيمة المُمرّرة <code>missingDelimiterValue</code>، والتي قيمتها الافتراضية هي [[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/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/trimEnd|trimEnd()]]‎</code>: تحذف المحارف المحققة لشرط معين، أو محارف محددة، أو المسافات الفارغة من نهاية [[Kotlin/CharSequence|سلسلة المحارف]] أو [[Kotlin/String|السلسلة النصية]] التي استُدعيت معها.
* <code>[[Kotlin/kotlin.text/slice|slice()]]</code>: تعيد  الدالة <code>slice()‎</code> [[Kotlin/CharSequence/index|سلسلة حروف]] أو [[Kotlin/String|سلسلة نصية]] جديدة تحتوي الحروف التي تنتمي فهارسها إلى الوسيط المُمرر
*الدالة <code>[[Kotlin/kotlin.text/trimStart|trimStart()]]</code>: تحذف المحارف المحققة لشرط معين، أو محارف محددة، أو المسافات الفارغة من بداية [[Kotlin/CharSequence|سلسلة المحارف]] أو [[Kotlin/String|السلسلة النصية]] التي استُدعيت معها    


*الدالة <code>[[Kotlin/kotlin.text/trimIndent|trimIndent()‎]]</code>: تبحث عن أقل مسافة بادئة (minimal indent) مشتركة بين جميع أسطر [[Kotlin/String|السلسلة النصية]] التي استُدعيت معها، ثم تحذفها من كل الأسطر، وتحذف أيضًا السطر الأول والأخير إن كانا فارغين.
* الدالة <code>[[Kotlin/kotlin.text/removePrefix|removePrefix()]]‎</code>: تحذف بادئة معينة من <nowiki/>[[Kotlin/CharSequence|سلسلة من المحارف]] أو سلسلة نصية.
* الدالة <code>[[Kotlin/kotlin.text/substringBeforeLast|substringBeforeLast()‎]]</code>: تجلب كل الجزء الواقع قبل آخر ظهور <nowiki/>[[Kotlin/Char|لمحرف]] أو لسلسلة نصية معينة في سلسلة نصية.  
* الدالة <code>[[Kotlin/kotlin.text/commonSuffixWith|commonSuffixWith()]]‎</code>: تعيد أطول لاحقة (Suffix) مُشتركة بين <nowiki/>[[Kotlin/CharSequence|سلسلة المحارف]] التي استُدعيت معها و<nowiki/>[[Kotlin/CharSequence/index|سلسلة المحارف]] المُمرّرة إليها.
* الدالة <code>[[Kotlin/kotlin.text/substringBefore|substringBefore()]]‎</code>: تجلب كل الجزء الواقع قبل أول ظهور <nowiki/>[[Kotlin/Char|لمحرف]] أو لسلسلة نصية معينة في سلسلة نصية. .  
* الدالة <code>[[Kotlin/kotlin.text/replaceBefore|replaceBefore()‎]]</code>: تبدل سلسلة نصية مكان كل الجزء الواقع قبل أول ظهور <nowiki/>[[Kotlin/Char|لمحرف]] أو لسلسلة نصية معينة في سلسلة نصية. 
==مصادر==
==مصادر==
*[http://kotlinlang.org/api/latest/jvm/stdlib/kotlin.text/trim-margin.html الدالة text.trimMargin()‎ في التوثيق الرسميّ للمكتبة القياسيّة في لغة Kotlin.]
*[http://kotlinlang.org/api/latest/jvm/stdlib/kotlin.text/trim-margin.html الدالة trimMargin()‎ في التوثيق الرسميّ للمكتبة القياسيّة في لغة Kotlin.]
[[تصنيف:Kotlin]]
[[تصنيف:Kotlin]]
[[تصنيف:Kotlin Functions]]
[[تصنيف:Kotlin Function]]
[[تصنيف:Kotlin Text]]

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

تحذف الدالة trimMargin()‎ جميع المحارف البيضاء البادئة المتبوعة بقيمة محددة من جميع أسطر السلسلة النصية التي استُدعيت معها، كما تحذف السطر الأول والأخير إن كانا فارغين (blanks)؛ أي مُكوّنان من مسافات بيضاء (whitespaces).

لا تؤثر الدالةُ على الاسطر التي لا تحوي القيمة المحددة بالمعامل marginPrefix المعطى، باستثناء الأسطر البيضاء الأولى والأخيرة.

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

fun String.trimMargin(marginPrefix: String = "|"): String

المعاملات

marginPrefix

سلسلة نصية غير فارغة -أي لا تحوي أية مسافة بيضاة- تستعمل كمحدد للهامش المراد حذفه. القيمة الافتراضية هي: | (محرف الأنبوب [pipe character]).

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

تعاد سلسلة نصية تحوي جميع محتويات السلسلة النصية المعطاة بعد حذف جميع المحارف البيضاء البادئة المتبوعة بالقيمة المحددة بالمعامل marginPrefix من جميع أسطرها، كما تحذف السطر الأول والأخير إن كانا فارغين.

أمثلة

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

import java.util.*

fun main(args: Array<String>) {
    val withoutMargin1 = """ABC
                |123
                |456""".trimMargin()
    println(withoutMargin1) // ABC\n123\n456

    val withoutMargin2 = """
    #XYZ
    #foo
    #bar
""".trimMargin("#")
    println(withoutMargin2) // XYZ\nfoo\nbar
}

انظر أيضًا

  • الدالة trimIndent()‎: تبحث عن أقل مسافة بادئة (minimal indent) مشتركة بين جميع أسطر السلسلة النصية التي استُدعيت معها، ثم تحذفها من كل الأسطر، وتحذف أيضًا السطر الأول والأخير إن كانا فارغين.
  • الدالة removePrefix(): تحذف بادئة معينة من سلسلة من المحارف أو سلسلة نصية.
  • الدالة substringBeforeLast()‎: تجلب كل الجزء الواقع قبل آخر ظهور لمحرف أو لسلسلة نصية معينة في سلسلة نصية.  
  • الدالة commonSuffixWith(): تعيد أطول لاحقة (Suffix) مُشتركة بين سلسلة المحارف التي استُدعيت معها وسلسلة المحارف المُمرّرة إليها.
  • الدالة substringBefore(): تجلب كل الجزء الواقع قبل أول ظهور لمحرف أو لسلسلة نصية معينة في سلسلة نصية. .  
  • الدالة replaceBefore()‎: تبدل سلسلة نصية مكان كل الجزء الواقع قبل أول ظهور لمحرف أو لسلسلة نصية معينة في سلسلة نصية. 

مصادر