الخاصية MatchResult.groups في لغة Kotlin

من موسوعة حسوب
< Kotlin‏ | kotlin.text‏ | MatchResult
مراجعة 22:26، 6 يوليو 2018 بواسطة محمد-بغات (نقاش | مساهمات) (أنشأ الصفحة ب'<noinclude>{{DISPLAYTITLE: الخاصية <code>MatchResult.groups</code> في لغة Kotlin}}</noinclude> تعيد الخاصية <code>groups</code> Kotlin/List|لا...')
(فرق) → مراجعة أقدم | المراجعة الحالية (فرق) | مراجعة أحدث ← (فرق)
اذهب إلى التنقل اذهب إلى البحث

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

إن كانت المجموعة في  التعبير النمطياختيارية ولم يكن هناك أي تطابق، فإن العنصر المقابل في اللائحة groupValues سيكون هو اللائحة الفارغة.

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

abstract val groupValues: List<String>

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

لائحة تضم مجموعة المُطابقات  للتعبير النمطي.

أمثلة

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

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

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)?.groupValues
print(res)
}

أنظر أيضًا

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

مصادر