hi, ich möchte, dass bei der eingabe nur ein mögliches datum eingeben wird.
dazu überschreibe ich die methode "insertString(...)" der klasse PlainDocument
und überprüfe dies mit einen regulären ausdruck - was leider nicht wie gewünscht funktioniert.
kann mir jemand sagen, wie der regulären ausdruck dazu aussehen müsste?
(bzw. wie ich z.b. erst eine zahl zwischen 0 und 3 und dann eine zahl zwischen 0 und 9
abfragen kann - hab damit schon schwierigkeiten - s. code)
danke,
acky
dazu überschreibe ich die methode "insertString(...)" der klasse PlainDocument
und überprüfe dies mit einen regulären ausdruck - was leider nicht wie gewünscht funktioniert.
kann mir jemand sagen, wie der regulären ausdruck dazu aussehen müsste?
(bzw. wie ich z.b. erst eine zahl zwischen 0 und 3 und dann eine zahl zwischen 0 und 9
abfragen kann - hab damit schon schwierigkeiten - s. code)
Code:
class DateVerifier extends PlainDocument {
public void insertString(int offs, String str, AttributeSet a) throws BadLocationException {
String text = this.getText(0,offs) + str + this.getText(offs,this.getLength()-offs);
String regex = "[0-3][0-9]";
if(!text.matches(regex)) {
Toolkit.getDefaultToolkit().beep();
return;
}
super.insertString(offs, str, a);
}
}
danke,
acky