Kotlin có hỗ trợ cho các nhóm regex được đặt tên không?Kotlin Regex được đặt tên theo nhóm hỗ trợ
nhóm regex Đặt tên trông như thế này: (?<name>...)
Kotlin có hỗ trợ cho các nhóm regex được đặt tên không?Kotlin Regex được đặt tên theo nhóm hỗ trợ
nhóm regex Đặt tên trông như thế này: (?<name>...)
Tính đến Kotlin 1,0 lớp Regex
không cung cấp một cách để truy cập phù hợp nhóm có tên trong MatchGroupCollection
vì bộ thư viện chuẩn chỉ có thể sử dụng api regex sẵn trong JDK6, mà không có hỗ trợ cho các nhóm được đặt tên.
Nếu bạn nhắm mục tiêu JDK8, bạn có thể sử dụng các lớp java.util.regex.Pattern
và java.util.regex.Matcher
. Cách thứ hai cung cấp phương thức group
để nhận kết quả của việc khớp nhóm được đặt tên.
Theo this discussion,
này sẽ được hỗ trợ trong Kotlin 1.1. https://youtrack.jetbrains.com/issue/KT-12753
Kotlin 1.1 EAP đã có sẵn để thử.
"""(\w+?)(?<num>\d+)""".toRegex().matchEntire("area51")!!.groups["num"]!!.value
Bạn sẽ phải usekotlin-stdlib-jre8
.