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

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

تبدِّل الدالة replaceRange()‎ سلسلة معينة من المحارف مكان جزء محدد في سلسلة من المحارف أو سلسلة نصية.

سيُرمَى الاستثناء IndexOutOfBoundsException إن وقع مجال الجزء المحدد المراد استبداله خارج مجال سلسلة المحارف أو السلسلة النصية المعطاة.

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

fun CharSequence.replaceRange(
    startIndex: Int, 
    endIndex: Int, 
    replacement: CharSequence
): CharSequence

inline fun String.replaceRange(
    startIndex: Int, 
    endIndex: Int, 
    replacement: CharSequence
): String

fun CharSequence.replaceRange(
    range: IntRange, 
    replacement: CharSequence
): CharSequence 

inline fun String.replaceRange(
    range: IntRange, 
    replacement: CharSequence
): String

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

المعاملات

startIndex

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

endIndex

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

range

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

replacement

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

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

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

أمثلة

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

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

    println( str.replaceRange(6, 10, "academy")) // Hsoub academy
    println( str.replaceRange(6..9, "academy"))               // Hsoub academy
}

انظر أيضًا

مصادر