Frage zur Methode matches()

Alex_winf01

Top Contributor
Hallo liebe Forengemeinde,

ich habe ein Textfeld wo folgende Eingabe gültig ist:

- 01.01.2000
- 05.05.2001
- 30.01.2002

Folgender Code führt jedes Mal zu einem Fehler, obwohl die Eingabe korrekt ist (siehe oben):

Code:
feld.getText().matches("[0-9]{0,2}\\.?[0-9]?{3,5}\\.?[0-9]?{6,10}

Was mache ich falsch?
 
feld.getText().matches("[0-9]{0,2}\\.?[0-9]?{3,5}\\.?[0-9]?{6,10}

Hallo Alexandra,

? ist ein quantifier und bedeutet "zwischen 0 und 1 mal"
{3,5} ist ebenfalls ein quantifier und bedeutet "zwischen 3 und 5 mal"

Wenn du folgende "Regular Expression" schreibst:
[0-9]?{3,5}
dann hast du ja für das Zeichen [0-9] gleichzeitig zwei quantifier. Das geht natürlich nicht.

Gruß,
André
 

Zurück
Oben