الدالة substring()‎ في Kotlin

من موسوعة حسوب

تعيد الدالة substring()‎ جزءًا محددًا من السلسلة النصية أو سلسلة المحارف التي استُدعيت معها.

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

inline actual fun String.substring(startIndex: Int): String 

inline actual fun String.substring(
    startIndex: Int, 
    endIndex: Int
): String

fun String.substring(range: IntRange): String 

fun CharSequence.substring(range: IntRange): String

inline fun CharSequence.substring(
    startIndex: Int, 
    endIndex: Int = length
): String

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

المعاملات

startIndex

عدد صحيح يشير إلى فهرس العنصر الذي يمثل بداية المجال المراد جلبه.

endIndex

عدد صحيح يشير إلى فهرس العنصر الذي يمثل نهاية المجال المراد جلبه (لا يدخل هذا المحرف ضمن المجال). إن لم يعطَ هذا المعامل، فستكون نهاية الجزء المراد جلبه هي نهاية سلسلة المحارف أو السلسلة النصية المعطاة.

range

مجال من النوع IntRange يحدد الجزء المراد جلبه من سلسلة المحارف المعطاة.

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

تعاد سلسلة نصية تحوي الجزء المقتطع من سلسلة المحارف المعطاة المحدد بالمعامل startIndex والمعامل endIndex، أو بالمجال range

أمثلة

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

fun main(args: Array<String>) {
    val str = "wiki.hsoub.com"

    println(str.substring(5..9)) // hsoub
    println(str.substring(5, 10)) // hsoub
}

انظر أيضًا

  • الدالة subSequence()‎ : تعيد جزءًا محددًا من سلسلة المحارف التي استُدعيت معها.
  • الدالة substringAfter(): تجلب كل الجزء الواقع بعد أول ظهور لمحرف أو لسلسلة نصية معينة في سلسلة نصية.
  • الدالة substringBefore(): تجلب كل الجزء الواقع قبل أول ظهور لمحرف أو لسلسلة نصية معينة في سلسلة نصية. .  
  • الدالة slice(): تقتطع جزءًا محدَّدًا من سلسلة المحارف أو السلسلة النصية  التي استُدعيت معها ثمَّ تعيده.
  • الدالة replace()‎: تبدل محرفًا جديدًا مكان محرف قديم، أو سلسلة نصية جديدة مكان سلسلة نصية قديمة، أو سلسلة نصية جديدة أو ناتج تنفيذ دالة مكان كل ما يطابق تعبير نمطي معين في سلسلة نصية أو سلسلة من المحارف.

مصادر