3
この単純な正規表現が何にもマッチしない理由を理解できません。それは常に失敗し、例外をスローします:正規表現がKotlinで一致しない
val match = Regex("""\d+""").matchEntire("A123B")?: throw Exception("Regex fail")
この単純な正規表現が何にもマッチしない理由を理解できません。それは常に失敗し、例外をスローします:正規表現がKotlinで一致しない
val match = Regex("""\d+""").matchEntire("A123B")?: throw Exception("Regex fail")
あなたはmatchEntire
で入力全体を一致させたいと\d+
パターン:
fun matchEntire(input: CharSequence): MatchResult? (source)
試みは、パターンに対する全入力されたCharSequenceを一致させます。
戻り値入力全体が一致する場合はMatchResultのインスタンス、一致しない場合はnullを返します。
ただし、A123B
は数字で構成されているだけではありません。部分一致が必要な場合は、find
を使用してください。
文字列全体を '\ d +'にマッチさせたいが、あなたの 'A123B'は数字だけではない。 –
これらの文字列を完全に一致させる必要があり、英数字で構成されている場合は、 '\ p {Alnum} + 'パターンを使用することができます。大文字と数字だけが許されている場合は、 '[A-Z0-9] +'を使います。 –