الفرق بين المراجعتين ل"Kotlin/kotlin.text/MatchResult/next"

من موسوعة حسوب
اذهب إلى التنقل اذهب إلى البحث
(مراجعة وتدقيق.)
 
(مراجعتان متوسطتان بواسطة مستخدمين اثنين آخرين غير معروضتين)
سطر 1: سطر 1:
<noinclude>{{DISPLAYTITLE: الدالة <code>MatchResult.next()‎</code> في لغة Kotlin}}</noinclude>
+
<noinclude>{{DISPLAYTITLE: الدالة <code>MatchResult.next()‎</code> في Kotlin}}</noinclude>
تعيد الدالة<code>next()‎</code> كائنًا من النوع <code>[[Kotlin/kotlin.text/MatchResult/index|MatchResult]]</code> يحتوي نتائج المطابقة الموالية [[Kotlin/kotlin.text/Regex/index|للتعبير النمطي]]، بداية من فهرس آخر مطابقة.
+
تعيد الدالة <code>next()‎</code> كائنًا من النوع <code>[[Kotlin/kotlin.text/MatchResult/index|MatchResult]]</code> يحوي ناتج المطابقة التالية [[Kotlin/kotlin.text/Regex/index|لتعبير نمطي]] محدد والذي يبدأ عند الفهرس الذي انتهت عنده آخر عملية مطابقة (أي يبدأ عن المحرف الذي يلي آخر محرف تمت مطابقته).
 
==البنية العامة==
 
==البنية العامة==
 
<syntaxhighlight lang="kotlin">
 
<syntaxhighlight lang="kotlin">
سطر 6: سطر 6:
  
 
</syntaxhighlight>
 
</syntaxhighlight>
==القيمة المُعادة==
+
==القيمة المعادة==
كائنًا من النوع <code>[[Kotlin/kotlin.text/MatchResult/index|MatchResult]].</code>
+
يعاد كائنٌ من النوع <code>[[Kotlin/kotlin.text/MatchResult/index|MatchResult]]</code> يحوي نتائج المطابقة التالية [[Kotlin/kotlin.text/Regex/index|لتعبير نمطي]] محدد التي تبدأ من الفهرس الذي انتهت عنده آخر عملية مطابقة.
 
==أمثلة==
 
==أمثلة==
===استخدام التابع <code>next()‎</code>===
+
ينشِئ التابع <code>Regex()‎</code> في الشيفرة التالية <nowiki/>[[Kotlin/kotlin.text/Regex/index|تعبيرًا نمطيًا]] باسم <code>reg</code> لمطابقة التعابير العددية، ثم يستدعي معه الدالة <code>find()‎</code> للحصول على مطابقات [[Kotlin/kotlin.text/Regex/index|التعبير النمطي]] <code>reg</code> في السلسلة النصية المُمرّرة، وإحالة القيمة المعادة (هي 43 في مثالنا هذا) إلى المتغير <code>matchResult</code>. تستعمل بعد ذلك الدالة <code>next()‎</code> مع المتغير <code>matchResult</code> للحصول على المطابقة التالية:<syntaxhighlight lang="kotlin">
ينشِئ التابع <code>Regex()‎</code> في الشيفرة الآتية <nowiki/>[[Kotlin/kotlin.text/Regex/index|تعبيرًا نمطيًا]] باسم <code>reg</code> لمطابقة التعابير العددية، ثم يستدعي عبره الدالة <code>find()‎</code> للحصول على مطابقات [[Kotlin/kotlin.text/Regex/index|التعبير النمطي]] <code>reg</code> في السلسلة النصية المُمرّرة، ويحيل القيمة المعادة (<code>43</code>) إلى المتغير <code>matchResult</code>، ثم يستدعي الدالة <code>next()‎</code> عبر <code>matchResult</code> للحصول على المطابقة الموالية (<code>24</code>)، ثم يطبع النتائج:<syntaxhighlight lang="kotlin">
 
 
fun main(args: Array<String>) {
 
fun main(args: Array<String>) {
val reg = Regex("""-?\d+(\.\d+)?""")
+
    val reg = Regex("""-?\d+(\.\d+)?""")
val matchResult   = reg.find("xab43cd24y")  
+
    val matchResult = reg.find("xab43cd24y")
val nextMatchResult = matchResult?.next()
+
    val nextMatchResult = matchResult?.next()
  
print(matchResult?.value) // 43  
+
    print(matchResult?.value)       // 43
print(nextMatchResult?.value) // 24
+
    print(nextMatchResult?.value)   // 24
 
}
 
}
 
</syntaxhighlight>
 
</syntaxhighlight>
==أنظر أيضًا==
+
==انظر أيضًا==
* لخاصية <code>[[Kotlin/kotlin.text/MatchResult/destructured|MatchResult.destructured‎]]</code>: تعيد نسخة من الصنف <code>MatchResult.Destructured،</code> والتي توفّر مركبات لتفكيك قيم المجموعة المُطابقة. المركبة الأولى تقابل قيمة المجموعة المُطابقَة الأولى، والمركبة الثانية تقابل الثانية، وهكذا دواليك.
+
* الخاصية <code>[[Kotlin/kotlin.text/MatchResult/groupValues|MatchResult.groupValues]]</code>: تمثل قائمة بقيم المجموعة المفهرسة المتطابقة.
* الخاصية <code>[[Kotlin/kotlin.text/MatchResult/groupValues|MatchResult.groupValues]]</code>: تعيد لائحة تضم مجموعة المُطابقات  للتعبير النمطي. حجم تلك اللائحة يساوي <code>groupCount + 1،</code>حيث<code>groupCount</code> هو عدد المجموعات المطابَقة في  التعبير النمطي. تلك المجموعات مُفهرسة من 1 حتى <code>groupCount،</code> والمجموعة ذات الفهرس<code>0</code> توافق المطابقة الكلية.
+
* الخاصية <code>[[Kotlin/kotlin.text/MatchResult/groups|MatchResult.groups]]</code>: تمثل <nowiki/>[[Kotlin/collections|مجموعةً]] (collection) تضم جميع المجموعات (groups) المتطابقة باستعمال <nowiki/>[[Kotlin/kotlin.text/Regex/index|تعبير نمطي]] محدد.
* الخاصية <code>[[Kotlin/kotlin.text/MatchResult/groups|MatchResult.groups]]</code>: تعيد الخاصية <code>groups</code> كائنًا من النوع <code>MatchGroupCollection</code> يضم مجموعة المُطابقات الموجودة فيالتعبير النمطي. حجم تلك المجموعة يساوي <code>groupCount + 1،</code> حيث<code>groupCount</code> هو عدد المجموعات المطابَقة في  التعبير النمطي. تلك المجموعات مُفهرسة من 1 حتى <code>groupCount،</code> والمجموعة ذات الفهرس <code>0</code> توافق المطابقة الكلية.
+
* الخاصية <code>[[Kotlin/kotlin.text/MatchResult/range|MatchResult.range]]</code>: تمثل مجال الفهارس الذي يحدد مكان مُطابقة <nowiki/>[[Kotlin/kotlin.text/Regex/index|تعبير نمطي]] محدد في السلسلة النصية الأصلية.
 +
* الخاصية <code>[[Kotlin/kotlin.text/MatchResult/value|MatchResult.value]]</code>: تمثل السلسلة النصية المُدخلة، أو جزءًا منها، والمُطابقة <nowiki/>[[Kotlin/kotlin.text/Regex/index|للتعبير النمطي]]. 
  
 
==مصادر==
 
==مصادر==
* [http://kotlinlang.org/api/latest/jvm/stdlib/kotlin.text/-match-result/next.html الدالة  MatchResult.next()‎ في التوثيق الرسميّ للمكتبة القياسيّة في لغة Kotlin.]
+
*[http://kotlinlang.org/api/latest/jvm/stdlib/kotlin.text/-match-result/next.html صفحة الدالة MatchResult.next()‎ في التوثيق الرسميّ للمكتبة القياسيّة في لغة Kotlin.]
 
[[تصنيف:Kotlin]]
 
[[تصنيف:Kotlin]]
[[تصنيف:Kotlin Methods]]
+
[[تصنيف:Kotlin Function]]
 +
[[تصنيف:Kotlin Text]]
 +
[[تصنيف:Kotlin MatchResult]]

المراجعة الحالية بتاريخ 07:11، 30 أغسطس 2018

تعيد الدالة next()‎ كائنًا من النوع MatchResult يحوي ناتج المطابقة التالية لتعبير نمطي محدد والذي يبدأ عند الفهرس الذي انتهت عنده آخر عملية مطابقة (أي يبدأ عن المحرف الذي يلي آخر محرف تمت مطابقته).

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

abstract fun next(): MatchResult?

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

يعاد كائنٌ من النوع MatchResult يحوي نتائج المطابقة التالية لتعبير نمطي محدد التي تبدأ من الفهرس الذي انتهت عنده آخر عملية مطابقة.

أمثلة

ينشِئ التابع Regex()‎ في الشيفرة التالية تعبيرًا نمطيًا باسم reg لمطابقة التعابير العددية، ثم يستدعي معه الدالة find()‎ للحصول على مطابقات التعبير النمطي reg في السلسلة النصية المُمرّرة، وإحالة القيمة المعادة (هي 43 في مثالنا هذا) إلى المتغير matchResult. تستعمل بعد ذلك الدالة next()‎ مع المتغير matchResult للحصول على المطابقة التالية:

fun main(args: Array<String>) {
    val reg = Regex("""-?\d+(\.\d+)?""")
    val matchResult = reg.find("xab43cd24y")
    val nextMatchResult = matchResult?.next()

    print(matchResult?.value)        // 43
    print(nextMatchResult?.value)    // 24
}

انظر أيضًا

مصادر