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

من موسوعة حسوب

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

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

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

abstract val groupValues: List<String>

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

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

أمثلة

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

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

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، والتي توفّر مركبات لتفكيك قيم المجموعة المُطابقة. المركبة الأولى تقابل قيمة المجموعة المُطابقَة الأولى، والمركبة الثانية تقابل الثانية، وهكذا دواليك.

مصادر