RowFilter Case Insensitive Problem

beens0n

Mitglied
Hallo,

ich habe ein Problem mit meinem RowFilter. Nicht das Case Insensitive suchen an sich macht Probleme, dass klappt super. Hier mal ein Ausschnitt:

Java:
sorter.setRowFilter(RowFilter.regexFilter(("?i ") + textField.getText()));
Der Teil ("?i ") ist hierbei dafür zuständig, dass die Suche Case Intensitive abläuft. Mein Problem ist aber folgendes. Es gibt Zeichen, mit denen hat er keine Problem, suche ich nach einer Tilde ~ ist das kein Problem, steht aber ein Stern * am Anfang des Strings kommt folgende Fehlermeldung:

[WR]Exception in thread "AWT-EventQueue-0" java.util.regex.PatternSyntaxException: Dangling meta character '?' near index 0
?i *[/WR]

Gibt es eine einfache Möglichkeit das zu umgehen? Könnte einen try/catch Block drum bauen, aber dabei gefällt mir nicht, dass * die Anzeige meiner JTable nicht verändert, ~ aber schon (da ich keine Strings mit ~ habe ist sie leer). Meine Idee wäre eine Abfrage zu erstellen, die alle Sonderzeichen verbietet, außer .,- und (), aber bei der Klammer ists leider das selbe Problem, wie beim Stern, steht sie am Anfang gibts eine Exception.
 

Ähnliche Java Themen

Neue Themen


Oben