Sitze gerade vor einem pattern, dass nicht soll wie ich.
Ich nutze für Dateinamen eine bestimmte Benennungsmethode, die Dateinamen nach einem bestimmten Muster erzeugt. Unterstrich (_) ist dabei das Trennzeichen. Nach jedem Unterstrich kommt immer eine Kategorie oder Art der Datei, Datum etc.
Erlaubt soll dadurch sein:
[code=Java]String filename = "00000000_aaa_bbb_ccc";[/code]
oder
[code=Java]filename = "00000000_aaa_bbb_ccc_ddd";[/code]
Mein Pattern bisher:
[code=Java]Pattern.matches(".+(_.+){3,4}", filename); [/code]
Nicht erlaubt soll sein:
[code=Java]String filename = "00000000_aaa_bbb";
filename = "00000000_aaa";
filename = "00000000";
filename = "00000000_aaa_bbb_ccc_ddd_eee";
filename = "00000000_aaa_bbb_ccc_ddd_eee_fff";[/code]
etc pp
Leider erlaubt mein Pattern Dateien mit Unterstrichfolgen über D hinaus.
So ist z.B. [code=Java]filename = "00000000_aaa_bbb_ccc_ddd_eee.jpg";[/code] auch gültig.
Alles was kleiner ist, wird korrekt abgefangen.