class Destructured
Provides components for destructuring assignment of group values.
component1 corresponds to the value of the first group, component2 — of the second, and so on.
If the group in the regular expression is optional and there were no match captured by that group, corresponding component value is an empty string.
fun main(args: Array<String>) {
//sampleStart
val inputString = "John 9731879"
val match = Regex("(\\w+) (\\d+)").find(inputString)!!
val (name, phone) = match.destructured
println(name) // John // value of the first group matched by \w+
println(phone) // 9731879 // value of the second group matched by \d+
// group with the zero index is the whole substring matched by the regular expression
println(match.groupValues) // [John 9731879, John, 9731879]
val numberedGroupValues = match.destructured.toList()
// destructured group values only contain values of the groups, excluding the zeroth group.
println(numberedGroupValues) // [John, 9731879]
//sampleEnd
}
val match: MatchResult
operator fun component1(): String
operator fun component10(): String
operator fun component2(): String
operator fun component3(): String
operator fun component4(): String
operator fun component5(): String
operator fun component6(): String
operator fun component7(): String
operator fun component8(): String
operator fun component9(): String
Returns destructured group values as a list of strings. First value in the returned list corresponds to the value of the first group, and so on.
fun toList(): List<String>
© 2010–2020 JetBrains s.r.o. and Kotlin Programming Language contributors
Licensed under the Apache License, Version 2.0.
https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.text/-match-result/-destructured/index.html