الفرق بين المراجعتين لصفحة: «Kotlin/kotlin.text/Regex/replace»
أنشأ الصفحة ب'<noinclude>{{DISPLAYTITLE: الدالة <code>Regex.replace()</code> في لغة Kotlin}}</noinclude> إن كانت جميع حروف الوسيط الممرّر <co...' |
جميل-بيلوني (نقاش | مساهمات) طلا ملخص تعديل |
||
(4 مراجعات متوسطة بواسطة 3 مستخدمين غير معروضة) | |||
سطر 1: | سطر 1: | ||
<noinclude>{{DISPLAYTITLE: الدالة <code>Regex.replace()</code> في | <noinclude>{{DISPLAYTITLE: الدالة <code>Regex.replace()</code> في Kotlin}}</noinclude> | ||
تبدل الدالة <code>replace()</code> [[Kotlin/String|سلسلة النصية]] معينة مكان كل تطابقات [[Kotlin/kotlin.text/Regex/index|التعبير النمطي]] الذي استدعي معها في [[Kotlin/CharSequence|سلسلة المحارف]] المُمرّرة إليها أو [[Kotlin/CharSequence|سلسلة المحارف]] التي تعيدها الدالة الممررة إليها. | |||
==البنية العامة== | ==البنية العامة== | ||
<syntaxhighlight lang="kotlin"> | <syntaxhighlight lang="kotlin"> | ||
actual fun | actual fun replace( | ||
input: CharSequence, | |||
replacement: String | |||
): String | |||
actual fun replace( | |||
input: CharSequence, | |||
transform: (MatchResult) -> CharSequence | |||
): String (source) | |||
</syntaxhighlight> | </syntaxhighlight> | ||
== | |||
== المعاملات == | |||
=== <code>input</code> === | |||
[[Kotlin/CharSequence|سلسلة المحارف]] التي يراد مطابقتها مع تعبير نمطي واستبدال محتوى المعامل <code>replacement</code> أو ناتج الدالة <code>transform</code> بها. | |||
=== <code>replacement</code> === | |||
[[Kotlin/String|السلسلة النصية]] التي يراد أن تحل مكان كل تطابقات [[Kotlin/kotlin.text/Regex/index|التعبير النمطي]] المعطى في المعامل <code>input</code>. | |||
=== <code>transform</code> === | |||
دالة تعيد مجموعةٌ من المحارف التي يراد أن تحل مكان كل تطابقات [[Kotlin/kotlin.text/Regex/index|التعبير النمطي]] المعطى في المعامل <code>input</code>. | |||
==القيمة المعادة== | |||
تعاد [[Kotlin/String|سلسلة نصية]] تحوي جميع محتوى المعامل <code>input</code> بعد تبديل السلسلة النصية <code>replacement</code> مكان تطابقات [[Kotlin/kotlin.text/Regex/index|التعبير النمطي]] المعطى فيها. | |||
==أمثلة== | ==أمثلة== | ||
تنشئ الدالة <code>[[Kotlin/kotlin.text/Regex/Init|Regex()]]</code> في الشيفرة التالية <nowiki/>[[Kotlin/kotlin.text/Regex/index|تعبيرًا نمطيًا]] باسم <code>reg</code> لمطابقة التعابير العددية، ثم تُستدعََى معه الدالة <code>replace()</code> لاستبدال كل القيم العددية أينما وجدت:<syntaxhighlight lang="kotlin"> | |||
fun main(args: Array<String>) { | fun main(args: Array<String>) { | ||
val reg = Regex("""-?\d+(\.\d+)?""") | // يطابق التعبير النمطي التالي جميع الأعداد | ||
val reg = Regex("""-?\d+(\.\d+)?""") | |||
println(reg. | |||
println(reg.replace("ab12cd34ef", "X")) // => abXcdXef | |||
} | } | ||
</syntaxhighlight> | </syntaxhighlight> | ||
== | ==انظر أيضًا== | ||
* | *الدالة <code>[[Kotlin/kotlin.text/Regex/replaceFirst|replaceFirst()]]</code>: تبدل [[Kotlin/String|سلسلة النصية]] معينة مكان أول مطابقة [[Kotlin/kotlin.text/Regex/index|للتعبير النمطي]] الذي استدعي معها في [[Kotlin/CharSequence|سلسلة المحارف]] المُمرّرة إليها. | ||
*الدالة <code>[[Kotlin/kotlin.text/Regex/containsMatchIn|containsMatchIn()]]</code>: تتحقق إن كان بإمكان [[Kotlin/kotlin.text/Regex/index|التعبير النمطي]] الذي استُدعي معها مطابقة محرفٍ واحدٍ على الأقل من [[Kotlin/CharSequence|سلسلة المحارف]] المُمرّرة إليه. | |||
*الدالة <code>[[Kotlin/kotlin.text/Regex/findAll|findAll()]]</code>: تبحث عن جميع المحارف المتطابقة مع [[Kotlin/kotlin.text/Regex/index|التعبير النمطي]] الذي استُدعي معها في [[Kotlin/CharSequence|سلسلة المحارف]] الممرَّرة إليها. يمكن البحث في [[Kotlin/CharSequence|سلسلة المحارف]] المعطاة بأكملها، أو يمكن بدء عملية البحث عند محرف معين. | |||
*الدالة <code>[[Kotlin/kotlin.text/Regex/matchEntire|matchEntire()]]</code>: تحاول مطابقة جميع محارف <nowiki/>[[Kotlin/CharSequence|السلسلة]] الممررة إليها مع <nowiki/>[[Kotlin/kotlin.text/Regex/index|التعبير النمطي]] الذي استدعي معها. | |||
*الدالة <code>[[Kotlin/kotlin.text/Regex/split|split()]]</code>: تقتطع المحارف الموجودة بين الأجزاء المتطابقة مع <nowiki/>[[Kotlin/kotlin.text/Regex|التعبير النمطي]] الذي استُدعي معها في <nowiki/>[[Kotlin/CharSequence|سلسلة المحارف]] الممررة إليها. | |||
==مصادر== | ==مصادر== | ||
* [http://kotlinlang.org/api/latest/jvm/stdlib/kotlin.text/-regex/ | *[http://kotlinlang.org/api/latest/jvm/stdlib/kotlin.text/-regex/replace.html صفحة الدالة Regex.replace() في التوثيق الرسميّ للمكتبة القياسيّة في لغة Kotlin.] | ||
[[تصنيف:Kotlin]] | [[تصنيف:Kotlin]] | ||
[[تصنيف:Kotlin | [[تصنيف:Kotlin Function]] | ||
[[تصنيف:Kotlin Text]] | |||
[[تصنيف:Kotlin Regex]] |
المراجعة الحالية بتاريخ 14:56، 30 أغسطس 2018
تبدل الدالة replace()
سلسلة النصية معينة مكان كل تطابقات التعبير النمطي الذي استدعي معها في سلسلة المحارف المُمرّرة إليها أو سلسلة المحارف التي تعيدها الدالة الممررة إليها.
البنية العامة
actual fun replace(
input: CharSequence,
replacement: String
): String
actual fun replace(
input: CharSequence,
transform: (MatchResult) -> CharSequence
): String (source)
المعاملات
input
سلسلة المحارف التي يراد مطابقتها مع تعبير نمطي واستبدال محتوى المعامل replacement
أو ناتج الدالة transform
بها.
replacement
السلسلة النصية التي يراد أن تحل مكان كل تطابقات التعبير النمطي المعطى في المعامل input
.
transform
دالة تعيد مجموعةٌ من المحارف التي يراد أن تحل مكان كل تطابقات التعبير النمطي المعطى في المعامل input
.
القيمة المعادة
تعاد سلسلة نصية تحوي جميع محتوى المعامل input
بعد تبديل السلسلة النصية replacement
مكان تطابقات التعبير النمطي المعطى فيها.
أمثلة
تنشئ الدالة Regex()
في الشيفرة التالية تعبيرًا نمطيًا باسم reg
لمطابقة التعابير العددية، ثم تُستدعََى معه الدالة replace()
لاستبدال كل القيم العددية أينما وجدت:
fun main(args: Array<String>) {
// يطابق التعبير النمطي التالي جميع الأعداد
val reg = Regex("""-?\d+(\.\d+)?""")
println(reg.replace("ab12cd34ef", "X")) // => abXcdXef
}
انظر أيضًا
- الدالة
replaceFirst()
: تبدل سلسلة النصية معينة مكان أول مطابقة للتعبير النمطي الذي استدعي معها في سلسلة المحارف المُمرّرة إليها.
- الدالة
containsMatchIn()
: تتحقق إن كان بإمكان التعبير النمطي الذي استُدعي معها مطابقة محرفٍ واحدٍ على الأقل من سلسلة المحارف المُمرّرة إليه. - الدالة
findAll()
: تبحث عن جميع المحارف المتطابقة مع التعبير النمطي الذي استُدعي معها في سلسلة المحارف الممرَّرة إليها. يمكن البحث في سلسلة المحارف المعطاة بأكملها، أو يمكن بدء عملية البحث عند محرف معين. - الدالة
matchEntire()
: تحاول مطابقة جميع محارف السلسلة الممررة إليها مع التعبير النمطي الذي استدعي معها. - الدالة
split()
: تقتطع المحارف الموجودة بين الأجزاء المتطابقة مع التعبير النمطي الذي استُدعي معها في سلسلة المحارف الممررة إليها.