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

من موسوعة حسوب
أنشأ الصفحة ب'<noinclude>{{DISPLAYTITLE: الخاصية <code>MatchResult.groups</code> في لغة Kotlin}}</noinclude> تعيد الخاصية <code>groups</code> Kotlin/List|لا...'
 
لا ملخص تعديل
سطر 1: سطر 1:
<noinclude>{{DISPLAYTITLE: الخاصية <code>MatchResult.groups</code> في لغة Kotlin}}</noinclude>
<noinclude>{{DISPLAYTITLE: الخاصية <code>MatchResult.groups</code> في لغة Kotlin}}</noinclude>
تعيد الخاصية <code>groups</code> [[Kotlin/List|لائحة]] تضم مجموعة المُطابقات  <nowiki/>[[Kotlin/kotlin.text/Regex/index|للتعبير النمطي]]. حجم تلك [[Kotlin/List|اللائحة]] يساوي <code>groupCount + 1،</code> حيث<code>groupCount</code> هو عدد المجموعات المطابَقة في  <nowiki/>[[Kotlin/kotlin.text/Regex/index|التعبير النمطي]]. تلك المجموعات مُفهرسة من 1 حتى <code>groupCount،</code> والمجموعة ذات الفهرس <code>0</code> توافق المطابقة الكلية.
تعيد الخاصية <code>groups</code>  كائنًا من النوع <code>[[Kotlin/kotlin.text/MatchGroupCollection/index|MatchGroupCollection]]</code> يضم مجموعة المُطابقات الموجودة في  [[Kotlin/kotlin.text/Regex/index|ا]]<nowiki/>[[Kotlin/kotlin.text/Regex/index|لتعبير النمطي]]. حجم تلك المجموعة يساوي <code>groupCount + 1،</code> حيث<code>groupCount</code> هو عدد المجموعات المطابَقة في  <nowiki/>[[Kotlin/kotlin.text/Regex/index|التعبير النمطي]]. تلك المجموعات مُفهرسة من 1 حتى <code>groupCount،</code> والمجموعة ذات الفهرس <code>0</code> توافق المطابقة الكلية.
 
إن كانت المجموعة في  <nowiki/>[[Kotlin/kotlin.text/Regex/index|التعبير النمطي]]<nowiki/>اختيارية ولم يكن هناك أي تطابق، فإن العنصر المقابل في [[Kotlin/List|اللائحة]] <code>groupValues</code> سيكون هو [[Kotlin/List|اللائحة]] الفارغة.
==البنية العامة==
==البنية العامة==
<syntaxhighlight lang="kotlin">
<syntaxhighlight lang="kotlin">
abstract val groupValues: List<String>
abstract val groups: MatchGroupCollection


</syntaxhighlight>
</syntaxhighlight>
==القيمة المُعادة==
==القيمة المُعادة==
[[Kotlin/List|لائحة]] تضم مجموعة المُطابقات  <nowiki/>[[Kotlin/kotlin.text/Regex/index|للتعبير النمطي]].
كائن من النوع <code>[[Kotlin/kotlin.text/MatchGroupCollection/index|MatchGroupCollection]].</code>
==أمثلة==
==أمثلة==
===استخدام الخاصية <code>groups</code>===
===استخدام الخاصية <code>groups</code>===
في الشيفرة التالية ننشِئ  <nowiki/>[[Kotlin/kotlin.text/Regex/index|تعبيرًا نمطيًا]] باسم <code>regex</code> باستخدام التابع <code>[[Kotlin/kotlin.text/Regex/Init|Regex()‎]]</code>، ثم نعرّف سلسلة نصية باسم <code>str</code>، ثم نستخرج من <code>str</code>  مجموعات النتائج عبر استدعاء الدالة <code>matchEntire()‎</code>، ثم نستخدم الخاصية <code>groups</code> لاستخراج مجموعات النتائج، ثم نطبع الناتج:<syntaxhighlight lang="kotlin">
في الشيفرة التالية ننشِئ  <nowiki/>[[Kotlin/kotlin.text/Regex/index|تعبيرًا نمطيًا]] باسم <code>regex</code> باستخدام التابع <code>[[Kotlin/kotlin.text/Regex/Init|Regex()‎]]</code>، ثم نعرّف سلسلة نصية باسم <code>str</code>، ثم نستخرج من <code>str</code>  مجموعات النتائج عبر استدعاء الدالة <code>matchEntire()‎</code>، ثم نستخدم الخاصية <code>groups</code> لاستخراج مجموعات مجموعة المُطابقات الموجودة في <code>str</code>، ثم نطبع الناتج:<syntaxhighlight lang="kotlin">
fun main(args: Array<String>) {
fun main(args: Array<String>) {
val pattern = Regex("[a-zA-Z]+([0-9]+)[a-zA-Z]+([0-9]+)[a-zA-Z]+")
val pattern = Regex("[a-zA-Z]+([0-9]+)[a-zA-Z]+([0-9]+)[a-zA-Z]+")
val str = "ABcDEFG12345DiFKGLSG938SDsFSd"
val str = "ABcDEFG12345DiFKGLSG938SDsFSd"


val res = pattern.matchEntire(str)?.groupValues
val res = pattern.matchEntire(str)?.groups
print(res)
print(res)
}
}
</syntaxhighlight>المُخرجات:<syntaxhighlight lang="kotlin">
[MatchGroup(value=ABcDEFG12345DiFKGLSG938SDsFSd, range=0..28), MatchGroup(value=12345, range=7..11), MatchGroup(value=938, range=20..22)]
</syntaxhighlight>
</syntaxhighlight>
==أنظر أيضًا==
==أنظر أيضًا==
* صفحة الصنف <code>[[Kotlin/kotlin.text/MatchResult/Destructured/index|Destructured]]</code>.
* الخاصية <code>[[Kotlin/kotlin.text/MatchResult/destructured|MatchResult.destructured‎]]</code>: تعيد نسخة من الصنف <code>[[Kotlin/kotlin.text/MatchResult/Destructured/index|MatchResult.Destructured]]،</code> والتي توفّر مركبات لتفكيك قيم المجموعة المُطابقة. المركبة الأولى تقابل قيمة المجموعة المُطابقَة الأولى، والمركبة الثانية تقابل الثانية، وهكذا دواليك.
* الخاصية <code>MatchResult.destructured‎</code>: الخاصية <code>destructured‎</code> تعيد نسخة من الصنف <code>MatchResult.Destructured،</code> والتي توفّر مركبات لتفكيك قيم المجموعة المُطابقة. المركبة الأولى تقابل قيمة المجموعة المُطابقَة الأولى، والمركبة الثانية تقابل الثانية، وهكذا دواليك.
* الخاصية <code>[[Kotlin/kotlin.text/MatchResult/groupValues|MatchResult.groupValues]]</code>: تعيد  [[Kotlin/List|لائحة]] تضم مجموعة المُطابقات  <nowiki/>[[Kotlin/kotlin.text/Regex/index|للتعبير النمطي]]. حجم تلك [[Kotlin/List|اللائحة]] يساوي <code>groupCount + 1،</code> حيث<code>groupCount</code> هو عدد المجموعات المطابَقة في  <nowiki/>[[Kotlin/kotlin.text/Regex/index|التعبير النمطي]]. تلك المجموعات مُفهرسة من 1 حتى <code>groupCount،</code> والمجموعة ذات الفهرس <code>0</code> توافق المطابقة الكلية.


==مصادر==
==مصادر==
* [http://kotlinlang.org/api/latest/jvm/stdlib/kotlin.text/-match-result/group-values.html الخاصية MatchResult.groups في التوثيق الرسميّ للمكتبة القياسيّة في لغة Kotlin.]
* [http://kotlinlang.org/api/latest/jvm/stdlib/kotlin.text/-match-result/groups.html الخاصية MatchResult.groups في التوثيق الرسميّ للمكتبة القياسيّة في لغة Kotlin.]
[[تصنيف:Kotlin]]
[[تصنيف:Kotlin]]
[[تصنيف:Kotlin Property]]
[[تصنيف:Kotlin Property]]

مراجعة 22:38، 6 يوليو 2018

تعيد الخاصية groups كائنًا من النوع MatchGroupCollection يضم مجموعة المُطابقات الموجودة في التعبير النمطي. حجم تلك المجموعة يساوي groupCount + 1، حيثgroupCount هو عدد المجموعات المطابَقة في  التعبير النمطي. تلك المجموعات مُفهرسة من 1 حتى groupCount، والمجموعة ذات الفهرس 0 توافق المطابقة الكلية.

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

abstract val groups: MatchGroupCollection

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

كائن من النوع MatchGroupCollection.

أمثلة

استخدام الخاصية groups

في الشيفرة التالية ننشِئ  تعبيرًا نمطيًا باسم regex باستخدام التابع Regex()‎، ثم نعرّف سلسلة نصية باسم str، ثم نستخرج من str مجموعات النتائج عبر استدعاء الدالة matchEntire()‎، ثم نستخدم الخاصية groups لاستخراج مجموعات مجموعة المُطابقات الموجودة في str، ثم نطبع الناتج:

fun main(args: Array<String>) {
val pattern = Regex("[a-zA-Z]+([0-9]+)[a-zA-Z]+([0-9]+)[a-zA-Z]+")
val str = "ABcDEFG12345DiFKGLSG938SDsFSd"

val res = pattern.matchEntire(str)?.groups
print(res)
}

المُخرجات:

[MatchGroup(value=ABcDEFG12345DiFKGLSG938SDsFSd, range=0..28), MatchGroup(value=12345, range=7..11), MatchGroup(value=938, range=20..22)]

أنظر أيضًا

  • الخاصية MatchResult.destructured‎: تعيد نسخة من الصنف MatchResult.Destructured، والتي توفّر مركبات لتفكيك قيم المجموعة المُطابقة. المركبة الأولى تقابل قيمة المجموعة المُطابقَة الأولى، والمركبة الثانية تقابل الثانية، وهكذا دواليك.
  • الخاصية MatchResult.groupValues: تعيد لائحة تضم مجموعة المُطابقات  للتعبير النمطي. حجم تلك اللائحة يساوي groupCount + 1، حيثgroupCount هو عدد المجموعات المطابَقة في  التعبير النمطي. تلك المجموعات مُفهرسة من 1 حتى groupCount، والمجموعة ذات الفهرس 0 توافق المطابقة الكلية.

مصادر