Ich kann nicht verstehen, warum diese einfache Regex nichts passt. Es schlägt immer fehl und löst eine Ausnahme:Regex passt nicht in Kotlin
val match = Regex("""\d+""").matchEntire("A123B")?: throw Exception("Regex fail")
Ich kann nicht verstehen, warum diese einfache Regex nichts passt. Es schlägt immer fehl und löst eine Ausnahme:Regex passt nicht in Kotlin
val match = Regex("""\d+""").matchEntire("A123B")?: throw Exception("Regex fail")
Sie wollen mit matchEntire
und ein \d+
Muster einen ganzen Eingangs zum Spiel:
fun matchEntire(input: CharSequence): MatchResult? (source)
Versuche, den gesamten Eingang CharSequence mit dem Muster übereinstimmen.
Rückgabe Eine Instanz von MatchResult, wenn die gesamte Eingabe übereinstimmt oder nicht.
Allerdings besteht A123B
nicht nur aus Ziffern. Verwenden Sie find
, wenn Sie eine teilweise Übereinstimmung finden müssen.
Sie scheinen eine ganze Zeichenfolge mit '\ d +' abgleichen zu wollen, aber Ihr 'A123B' besteht nicht nur aus Ziffern. –
Nur ein Hinweis: Wenn Sie diese Zeichenfolgen vollständig abgleichen müssen und sie aus alphanumerischen Zeichen bestehen, können Sie das '\ p {Alnum} +' Muster verwenden. Oder wenn nur Großbuchstaben und Ziffern erlaubt sind, verwenden Sie '[A-Z0-9] +'. –