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.

Since Kotlin

1.0

Samples


fun main() { 
   //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
}

Properties

Link copied to clipboard
Since Kotlin 1.0

Functions

Link copied to clipboard
inline operator fun component1(): String
Since Kotlin 1.0
Link copied to clipboard
inline operator fun component10(): String
Since Kotlin 1.0
Link copied to clipboard
inline operator fun component2(): String
Since Kotlin 1.0
Link copied to clipboard
inline operator fun component3(): String
Since Kotlin 1.0
Link copied to clipboard
inline operator fun component4(): String
Since Kotlin 1.0
Link copied to clipboard
inline operator fun component5(): String
Since Kotlin 1.0
Link copied to clipboard
inline operator fun component6(): String
Since Kotlin 1.0
Link copied to clipboard
inline operator fun component7(): String
Since Kotlin 1.0
Link copied to clipboard
inline operator fun component8(): String
Since Kotlin 1.0
Link copied to clipboard
inline operator fun component9(): String
Since Kotlin 1.0
Link copied to clipboard

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.

Since Kotlin 1.0