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

من موسوعة حسوب
أنشأ الصفحة ب'<noinclude>{{DISPLAYTITLE: الدالة <code>Regex.matchEntire()‎</code> في لغة Kotlin}}</noinclude> تعيد الدالة<code>matchEntire()‎</code> كل ال...'
 
ط إضافة قسم "المعاملات"
 
(5 مراجعات متوسطة بواسطة 3 مستخدمين غير معروضة)
سطر 1: سطر 1:
<noinclude>{{DISPLAYTITLE: الدالة <code>Regex.matchEntire()‎</code> في لغة Kotlin}}</noinclude>
<noinclude>{{DISPLAYTITLE: الدالة <code>Regex.matchEntire()‎</code> في Kotlin}}</noinclude>
تعيد الدالة<code>matchEntire()‎</code> كل المطابقات [[Kotlin/kotlin.text/Regex/index|للتعبير النمطي]] الذي استُدعيت عبره  في الوسيط المُمرّر <code>input،</code>بداية من الفهرس المحدد بالوسيط <code>startIndex.</code>
تحاول الدالة <code>matchEntire()‎</code> مطابقة جميع محارف [[Kotlin/CharSequence|السلسلة]] الممررة إليها مع [[Kotlin/kotlin.text/Regex/index|التعبير النمطي]] الذي استدعي معها.
==البنية العامة==
==البنية العامة==
<syntaxhighlight lang="kotlin">
<syntaxhighlight lang="kotlin">
actual fun findAll(
actual fun matchEntire(input: CharSequence): MatchResult?
    input: CharSequence,
 
    startIndex: Int = 0
): Sequence<MatchResult>
</syntaxhighlight>
</syntaxhighlight>
==القيمة المُعادة==
==المعاملات==
كائن من النوع <code>[[Kotlin/Sequence|Sequence]]<[[Kotlin/kotlin.text/MatchResult/index|MatchResult]]></code>.
 
=== <code>input</code> ===
[[Kotlin/CharSequence|سلسلة المحارف]] التي يراد تطابق جميع محارفها مع [[Kotlin/kotlin.text/Regex/index|التعبير النمطي]] المعطى.
 
==القيمة المعادة==
تعاد نسخةٌ من الصنف [[Kotlin/kotlin.text/MatchResult/index|<code>MatchResult</code>]] تحتوي على جميع [[Kotlin/CharSequence|محارف]] المعامل <code>input</code> إن تطابقت جميع تلك [[Kotlin/CharSequence|المحارف]] مع [[Kotlin/kotlin.text/Regex/index|التعبير النمطي]] المعطى، أو تعاد القيمة <code>null</code> خلاف ذلك.
==أمثلة==
==أمثلة==
===استخدام التابع <code>matchEntire()‎</code>===
استعمال الدالة <code>matchEntire()‎</code> لمعرفة سلسلة المحارف المطابقة [[Kotlin/kotlin.text/Regex/index|للتعبير النمطي]] ‎-?\d+(\.\d+)?بشكل كامل:<syntaxhighlight lang="kotlin">
ينشِئ التابع <code>[[Kotlin/kotlin.text/Regex/Init|Regex()]]‎</code> في الشيفرة الآتية تعبيرًا نمطيًا باسم <code>reg</code> لمطابقة التعابير العددية، ثم يستدعي عبره الدالة <code>matchEntire()‎</code> ويحيل القيمة المعادة إلى المتغير <code>matchResults</code>، ثم ينشئ كائن من النوع <code>[[Kotlin/kotlin.text/Appendable/index|Appendable]]</code> عبر الدالة <code>[[Kotlin/kotlin.text/StringBuilder/Init|StringBuilder]]()‎،</code>ثم يطبع قيمة الفهرس بعد تجميع النتائج في الحلقة التكرارية <code>[[Kotlin/control flow#.D8.AA.D8.B9.D8.A8.D9.8A.D8.B1 for|for]]</code>:<syntaxhighlight lang="kotlin">
fun main(args: Array<String>) {
fun main(args: Array<String>) {
val reg = Regex("""-?\d+(\.\d+)?""") // يطابق هذا التعبير النمطي التعابير العددية، مثل: 45
    // يطابق التعبير النمطي التالي جميع الأعداد
    val reg = Regex("""-?\d+(\.\d+)?""")


val matchResults = reg.findAll("ab12cd34ef")
    println(reg.matchEntire("ab12cd34ef")?.value) // => null
   
     println(reg.matchEntire("1234567890")?.value) // => 1234567890
val result = StringBuilder()
      
for (matchResult in matchResults) {
    result.append(matchResult.value + " ")
}
 
println(result) // => 12 34
}
}
</syntaxhighlight>
</syntaxhighlight>
==أنظر أيضًا==
==انظر أيضًا==
* الخاصية <code>[[Kotlin/kotlin.text/Regex/pattern|pattern]]:</code> تعيد السلسلة النصية النمطية (pattern string) التي استُخدمت في إنشاء التعبير النمطي الذي استُدعيت عبره.
*الدالة <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/options|options]]:</code> تعبر عن مجموعة الخيارات التي استُخدمت في إنشاء التعبير النمطي الذي استُدعيت عبره.
*الدالة <code>[[Kotlin/kotlin.text/Regex/matches|matches()‎]]</code>: تتحقق من مطابقة جميع محارف [[Kotlin/CharSequence|السلسلة]] الممررة إليها مع [[Kotlin/kotlin.text/Regex/index|التعبير النمطي]] الذي استدعي معها. 
 
*الدالة <code>[[Kotlin/kotlin.text/Regex/Init|Regex()‎]]</code>: تنشئ [[Kotlin/kotlin.text/Regex/index|تعبيرًا نمطيًا]] (regular expression) انطلاقًا من [[Kotlin/String|السلسلة النصية]] المُمرّرة إليه.
*الدالة <code>[[Kotlin/kotlin.text/Regex/toPattern|toPattern()‎]]</code>: تحول كائنًا من النوع <code>[[Kotlin/kotlin.text/Regex|Regex]]</code> (تعبيرًا نمطيًا) إلى النوع <code>[[Kotlin/kotlin.text/java.util.regex.Pattern/index|Pattern]]</code> (نمط).
==مصادر==
==مصادر==
* [http://kotlinlang.org/api/latest/jvm/stdlib/kotlin.text/-regex/find-all.html الدالة  Regex.matchEntire()‎ في التوثيق الرسميّ للمكتبة القياسيّة في لغة Kotlin.]
*[http://kotlinlang.org/api/latest/jvm/stdlib/kotlin.text/-regex/match-entire.html صفحة الدالة Regex.matchEntire()‎ في التوثيق الرسميّ للمكتبة القياسيّة في لغة Kotlin.]
[[تصنيف:Kotlin]]
[[تصنيف:Kotlin]]
[[تصنيف:Kotlin Methods]]
[[تصنيف:Kotlin Function]]
[[تصنيف:Kotlin Text]]
[[تصنيف:Kotlin Regex]]

المراجعة الحالية بتاريخ 05:53، 1 سبتمبر 2018

تحاول الدالة matchEntire()‎ مطابقة جميع محارف السلسلة الممررة إليها مع التعبير النمطي الذي استدعي معها.

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

actual fun matchEntire(input: CharSequence): MatchResult?

المعاملات

input

سلسلة المحارف التي يراد تطابق جميع محارفها مع التعبير النمطي المعطى.

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

تعاد نسخةٌ من الصنف MatchResult تحتوي على جميع محارف المعامل input إن تطابقت جميع تلك المحارف مع التعبير النمطي المعطى، أو تعاد القيمة null خلاف ذلك.

أمثلة

استعمال الدالة matchEntire()‎ لمعرفة سلسلة المحارف المطابقة للتعبير النمطي ‎-?\d+(\.\d+)?‎ بشكل كامل:

fun main(args: Array<String>) {
    // يطابق التعبير النمطي التالي جميع الأعداد
    val reg = Regex("""-?\d+(\.\d+)?""")

    println(reg.matchEntire("ab12cd34ef")?.value) // => null
    println(reg.matchEntire("1234567890")?.value) // => 1234567890
}

انظر أيضًا

مصادر