الفرق بين المراجعتين لصفحة: «Kotlin/kotlin.text/replaceFirst»
لا ملخص تعديل |
جميل-بيلوني (نقاش | مساهمات) مراجعة وتدقيق. |
||
(مراجعتان متوسطتان بواسطة مستخدمين اثنين آخرين غير معروضتين) | |||
سطر 1: | سطر 1: | ||
<noinclude>{{DISPLAYTITLE: الدالة <code> | <noinclude>{{DISPLAYTITLE: الدالة <code>replaceFirst()</code> في Kotlin}}</noinclude> | ||
تبدل الدالة <code>replaceFirst()</code> محرفًا جديدًا مكان أول ظهور لمحرف قديم، أو سلسلة نصية جديدة مكان أول ظهور لسلسلة نصية قديمة، أو سلسلة نصية جديدة أو ناتج تنفيذ دالة مكان أول ما يطابق تعبير نمطي معين في سلسلة نصية أو سلسلة من المحارف. | |||
==البنية العامة== | ==البنية العامة== | ||
<syntaxhighlight lang="kotlin"> | <syntaxhighlight lang="kotlin"> | ||
سطر 8: | سطر 8: | ||
ignoreCase: Boolean = false | ignoreCase: Boolean = false | ||
): String | ): String | ||
actual fun String.replaceFirst( | actual fun String.replaceFirst( | ||
oldValue: String, | oldValue: String, | ||
سطر 14: | سطر 14: | ||
ignoreCase: Boolean = false | ignoreCase: Boolean = false | ||
): String | ): String | ||
inline fun CharSequence.replaceFirst( | inline fun CharSequence.replaceFirst( | ||
regex: Regex, | regex: Regex, | ||
replacement: String | replacement: String | ||
): String | ): String | ||
</syntaxhighlight> | </syntaxhighlight>وجود الكلمة المفتاحية <code>inline</code> يدل على أن هذه الدالة مباشرة (لمزيد من التفاصيل، ارجع إلى صفحة [[Kotlin/inline functions|الدوال المباشرة (inline functions)]]). | ||
== المعاملات == | |||
=== <code>oldChar</code> === | |||
المحرف القديم المراد استبدال أول ظهور للمحرف <code>newChar</code> به. | |||
=== <code>newChar</code> === | |||
المحرف الجديد الذي سيحل مكان أول ظهور للمحرف <code>oldChar</code>. | |||
=== <code>oldValue</code> === | |||
السلسلة النصية القديمة المراد استبدال القيمة <code>newValue</code> بأول ظهور لها. | |||
=== <code>newValue</code> === | |||
السلسلة النصية الجديد التي ستحل مكان أول ظهور للسلسلة <code>oldValue</code>. | |||
=== <code>regex</code> === | |||
تعبير نمطي يستعمل لمطابقة المحارف أو السلاسل النصية المراد استبدالها. | |||
=== <code>replacement</code> === | |||
السلسلة النصية التي ستحل مكان أول قيمة طابقها التعبير النمطي <code>regex</code>. يمكن أن تحوي هذه [[Kotlin/String|السلسلة النصية]] على استبدالات (substitutions). لمزيد من التفاصيل، راجع توثيق الدالة [[Kotlin/kotlin.text/Regex/replaceFirst|Regex.replaceFirst]]. | |||
=== <code>transform</code> === | |||
دالةٌ يمرر إليها أول قيمة متطابقة مع التعبير النمطي <code>regex</code> وتعيد سلسلة من المحارف التي ستحل مكان تلك القيم المتطابقة. | |||
=== <code>ignoreCase</code> === | |||
قيمة منطقية تحدد إن كان يراد إهمال حالة الأحرف أُثناء إجراء عملية البحث والاستبدال أم لا. القيمة الافتراضية هي: <code>false</code> (أي أخذ حالة الأحرف بالحسبان). | |||
==القيم المعادة== | ==القيم المعادة== | ||
تعاد سلسلة نصية تحوي جميع محتوى سلسلة المحارف أو السلسلة النصية المعطاة بعد تبديل المحرف <code>newChar</code> مكان أول ظهور للمحرف <code>oldChar</code>، أو السلسلة النصية <code>newValue</code> مكان أول ظهور للسلسلة النصية <code>oldValue</code>، أو السلسلة النصية <code>replacement</code> أو ناتج تنفيذ الدالة <code>transform</code> مكان أول ما يطابق التعبير النمطي <code>regex</code> فيها. | |||
==أمثلة== | ==أمثلة== | ||
مثال على استعمال الدالة <code>()replaceFirst</code>:<syntaxhighlight lang="kotlin"> | |||
fun main(args: Array<String>) { | fun main(args: Array<String>) { | ||
val str = "abc12rad234com" | val str = "abc12rad234com" | ||
println( str.replaceFirst ('a','X') ) // Xbc12rad234com | println(str.replaceFirst('a','X')) // Xbc12rad234com | ||
println( str.replaceFirst ("rad","X") ) // abc12X234com | println(str.replaceFirst("rad","X")) // abc12X234com | ||
println( str.replaceFirst (Regex("""-?\d+(\.\d+)?"""), "X") ) // abcXrad234com | println(str.replaceFirst(Regex("""-?\d+(\.\d+)?"""), "X")) // abcXrad234com | ||
} | } | ||
</syntaxhighlight> | </syntaxhighlight> | ||
==انظر أيضًا== | ==انظر أيضًا== | ||
* <code>[[Kotlin/kotlin.text/ | * الدالة <code>[[Kotlin/kotlin.text/replace|replace()]]</code>: تبدل محرفًا جديدًا مكان محرف قديم، أو سلسلة نصية جديدة مكان سلسلة نصية قديمة، أو سلسلة نصية جديدة أو ناتج تنفيذ دالة مكان كل ما يطابق تعبير نمطي معين في سلسلة نصية أو سلسلة من المحارف. | ||
* الدالة <code>[[Kotlin/kotlin.text/replaceAfter|replaceAfter()]]</code>: تبدل<nowiki/>[[Kotlin/String|سلسلة نصية]] مكان كل الجزء الواقع بعد أول ظهور [[Kotlin/Char|لمحرف]] أو [[Kotlin/String|لسلسلة نصية]] معينة في [[Kotlin/String|سلسلة نصية]] . | |||
* <code>[[Kotlin/kotlin.text/ | * الدالة <code>[[Kotlin/kotlin.text/replaceAfterLast|replaceAfterLast()]]</code>: تبدل<nowiki/>[[Kotlin/String|سلسلة نصية]] مكان كل الجزء الواقع بعد آخر ظهور [[Kotlin/Char|لمحرف]] أو [[Kotlin/String|لسلسلة نصية]] معينة في [[Kotlin/String|سلسلة نصية]] . | ||
* <code>[[Kotlin/kotlin.text/ | * الدالة <code>[[Kotlin/kotlin.text/replaceBefore|replaceBefore()]]</code>: تبدل [[Kotlin/String|سلسلة نصية]] مكان كل الجزء الواقع قبل أول ظهور [[Kotlin/Char|لمحرف]] أو [[Kotlin/String|لسلسلة نصية]] معينة في [[Kotlin/String|سلسلة نصية]]. | ||
* الدالة <code>[[Kotlin/kotlin.text/replaceBeforeLast|replaceBeforeLast()]]</code>: تبدل [[Kotlin/String|سلسلة نصية]] مكان كل الجزء الواقع قبل آخر ظهور [[Kotlin/Char|لمحرف]] أو [[Kotlin/String|لسلسلة نصية]] معينة في [[Kotlin/String|سلسلة نصية]]. | |||
* الدالة <code>[[Kotlin/kotlin.text/replaceIndent|replaceIndent()]]</code>: تبدِّل [[Kotlin/String|سلسلة نصية]] معينة مكان المسافة البادئة الفارغة (indentation) في [[Kotlin/String|السلسلة النصية]] التي استُدعيت معها. | |||
* الدالة <code>[[Kotlin/kotlin.text/replaceIndentByMargin|replaceIndentByMargin()]]</code> تبدل [[Kotlin/String|سلسلة نصية]] معينة مكان المسافة البادئة المحددة عبر المعامل الممرر إليها في [[Kotlin/String|السلسلة النصية]] التي استُدعيت معها. | |||
* الدالة <code>[[Kotlin/kotlin.text/replaceRange|replaceRange()]]</code>: تبدل سلسلة معينة من المحارف أو ناتج دالة معينة مكان مجال محدد في سلسلة من المحارف أو سلسلة نصية. | |||
* الدالة <code>[[Kotlin/kotlin.text/Regex/replace|replace()]]</code>: تبدل سلسلة النصية معينة مكان كل تطابقات <nowiki/>[[Kotlin/kotlin.text/Regex/index|التعبير النمطي]] الذي استدعي معها في <nowiki/>[[Kotlin/CharSequence|سلسلة المحارف]] المُمرّرة إليها أو <nowiki/>[[Kotlin/CharSequence|سلسلة المحارف]] التي تعيدها الدالة الممررة إليها. | |||
* الدالة <code>[[Kotlin/kotlin.text/Regex/find|find()]]</code>: تبحث عن أول محرف متطابق مع <nowiki/>[[Kotlin/kotlin.text/Regex/index|التعبير النمطي]] الذي استُدعي معها في <nowiki/>[[Kotlin/CharSequence|سلسلة المحارف]] الممرَّرة إليها. يمكن البحث في <nowiki/>[[Kotlin/CharSequence|سلسلة المحارف]] المعطاة بأكملها، أو يمكن بدء عملية البحث عند محرف معين. | |||
* الدالة <code>[[Kotlin/kotlin.text/Regex/matches|matches()]]</code>: تتحقق من مطابقة جميع محارف <nowiki/>[[Kotlin/CharSequence|السلسلة]] الممررة إليها مع <nowiki/>[[Kotlin/kotlin.text/Regex/index|التعبير النمطي]] الذي استدعي معها. | |||
* الدالة <code>[[Kotlin/kotlin.text/Regex/containsMatchIn|containsMatchIn()]]</code>: تتحقق إن كان بإمكان <nowiki/>[[Kotlin/kotlin.text/Regex/index|التعبير النمطي]] الذي استُدعي معها مطابقة محرفٍ واحدٍ على الأقل من <nowiki/>[[Kotlin/CharSequence|سلسلة المحارف]] المُمرّرة إليه. | |||
==مصادر== | ==مصادر== | ||
*[http://kotlinlang.org/api/latest/jvm/stdlib/kotlin.text/replace-first.html الدالة | *[http://kotlinlang.org/api/latest/jvm/stdlib/kotlin.text/replace-first.html صفحة الدالة replaceFirst() في التوثيق الرسميّ للمكتبة القياسيّة في لغة Kotlin.] | ||
[[تصنيف:Kotlin]] | [[تصنيف:Kotlin]] | ||
[[تصنيف:Kotlin | [[تصنيف:Kotlin Function]] | ||
[[تصنيف:Kotlin Text]] |
المراجعة الحالية بتاريخ 10:42، 5 سبتمبر 2018
تبدل الدالة replaceFirst()
محرفًا جديدًا مكان أول ظهور لمحرف قديم، أو سلسلة نصية جديدة مكان أول ظهور لسلسلة نصية قديمة، أو سلسلة نصية جديدة أو ناتج تنفيذ دالة مكان أول ما يطابق تعبير نمطي معين في سلسلة نصية أو سلسلة من المحارف.
البنية العامة
actual fun String.replaceFirst(
oldChar: Char,
newChar: Char,
ignoreCase: Boolean = false
): String
actual fun String.replaceFirst(
oldValue: String,
newValue: String,
ignoreCase: Boolean = false
): String
inline fun CharSequence.replaceFirst(
regex: Regex,
replacement: String
): String
وجود الكلمة المفتاحية inline
يدل على أن هذه الدالة مباشرة (لمزيد من التفاصيل، ارجع إلى صفحة الدوال المباشرة (inline functions)).
المعاملات
oldChar
المحرف القديم المراد استبدال أول ظهور للمحرف newChar
به.
newChar
المحرف الجديد الذي سيحل مكان أول ظهور للمحرف oldChar
.
oldValue
السلسلة النصية القديمة المراد استبدال القيمة newValue
بأول ظهور لها.
newValue
السلسلة النصية الجديد التي ستحل مكان أول ظهور للسلسلة oldValue
.
regex
تعبير نمطي يستعمل لمطابقة المحارف أو السلاسل النصية المراد استبدالها.
replacement
السلسلة النصية التي ستحل مكان أول قيمة طابقها التعبير النمطي regex
. يمكن أن تحوي هذه السلسلة النصية على استبدالات (substitutions). لمزيد من التفاصيل، راجع توثيق الدالة Regex.replaceFirst.
transform
دالةٌ يمرر إليها أول قيمة متطابقة مع التعبير النمطي regex
وتعيد سلسلة من المحارف التي ستحل مكان تلك القيم المتطابقة.
ignoreCase
قيمة منطقية تحدد إن كان يراد إهمال حالة الأحرف أُثناء إجراء عملية البحث والاستبدال أم لا. القيمة الافتراضية هي: false
(أي أخذ حالة الأحرف بالحسبان).
القيم المعادة
تعاد سلسلة نصية تحوي جميع محتوى سلسلة المحارف أو السلسلة النصية المعطاة بعد تبديل المحرف newChar
مكان أول ظهور للمحرف oldChar
، أو السلسلة النصية newValue
مكان أول ظهور للسلسلة النصية oldValue
، أو السلسلة النصية replacement
أو ناتج تنفيذ الدالة transform
مكان أول ما يطابق التعبير النمطي regex
فيها.
أمثلة
مثال على استعمال الدالة ()replaceFirst
:
fun main(args: Array<String>) {
val str = "abc12rad234com"
println(str.replaceFirst('a','X')) // Xbc12rad234com
println(str.replaceFirst("rad","X")) // abc12X234com
println(str.replaceFirst(Regex("""-?\d+(\.\d+)?"""), "X")) // abcXrad234com
}
انظر أيضًا
- الدالة
replace()
: تبدل محرفًا جديدًا مكان محرف قديم، أو سلسلة نصية جديدة مكان سلسلة نصية قديمة، أو سلسلة نصية جديدة أو ناتج تنفيذ دالة مكان كل ما يطابق تعبير نمطي معين في سلسلة نصية أو سلسلة من المحارف. - الدالة
replaceAfter()
: تبدلسلسلة نصية مكان كل الجزء الواقع بعد أول ظهور لمحرف أو لسلسلة نصية معينة في سلسلة نصية . - الدالة
replaceAfterLast()
: تبدلسلسلة نصية مكان كل الجزء الواقع بعد آخر ظهور لمحرف أو لسلسلة نصية معينة في سلسلة نصية . - الدالة
replaceBefore()
: تبدل سلسلة نصية مكان كل الجزء الواقع قبل أول ظهور لمحرف أو لسلسلة نصية معينة في سلسلة نصية. - الدالة
replaceBeforeLast()
: تبدل سلسلة نصية مكان كل الجزء الواقع قبل آخر ظهور لمحرف أو لسلسلة نصية معينة في سلسلة نصية. - الدالة
replaceIndent()
: تبدِّل سلسلة نصية معينة مكان المسافة البادئة الفارغة (indentation) في السلسلة النصية التي استُدعيت معها. - الدالة
replaceIndentByMargin()
تبدل سلسلة نصية معينة مكان المسافة البادئة المحددة عبر المعامل الممرر إليها في السلسلة النصية التي استُدعيت معها. - الدالة
replaceRange()
: تبدل سلسلة معينة من المحارف أو ناتج دالة معينة مكان مجال محدد في سلسلة من المحارف أو سلسلة نصية. - الدالة
replace()
: تبدل سلسلة النصية معينة مكان كل تطابقات التعبير النمطي الذي استدعي معها في سلسلة المحارف المُمرّرة إليها أو سلسلة المحارف التي تعيدها الدالة الممررة إليها. - الدالة
find()
: تبحث عن أول محرف متطابق مع التعبير النمطي الذي استُدعي معها في سلسلة المحارف الممرَّرة إليها. يمكن البحث في سلسلة المحارف المعطاة بأكملها، أو يمكن بدء عملية البحث عند محرف معين. - الدالة
matches()
: تتحقق من مطابقة جميع محارف السلسلة الممررة إليها مع التعبير النمطي الذي استدعي معها. - الدالة
containsMatchIn()
: تتحقق إن كان بإمكان التعبير النمطي الذي استُدعي معها مطابقة محرفٍ واحدٍ على الأقل من سلسلة المحارف المُمرّرة إليه.