Hi,
ich habe folgende Methode geschrieben:
Nun will ich mit der Methode alle Dateien einer Liste auflisten, die jpg-Dateien sind und NICHT das Datumsformat _JJJJ-MM-TT im Namen haben. Die jpg-Dateien kann ich ja erstmal auflisten. Aber ich weiß nicht, wie ich dann in der neuen Liste die Dateien ohne das Datumsformat raussuchen soll.
mit Ausrufezeichen, so wie in einer if-Abfrage funktioniert das nicht. Das ^ funktioniert ja auch nur in den eckigen Klammern...
Hat jemand ne Ahnung, wie man das lösen könnte?
ich habe folgende Methode geschrieben:
Code:
public static List<File> listFilesContainingPattern( List<File> filelist, String extensionPattern )
{
List<File> files = new ArrayList<File>( 1024 );
Pattern p = Pattern.compile( extensionPattern, Pattern.CASE_INSENSITIVE );
for (File file : filelist)
{
if (p.matcher(file.getName()).matches())
{
files.add( file );
}
}
return files;
}
Nun will ich mit der Methode alle Dateien einer Liste auflisten, die jpg-Dateien sind und NICHT das Datumsformat _JJJJ-MM-TT im Namen haben. Die jpg-Dateien kann ich ja erstmal auflisten. Aber ich weiß nicht, wie ich dann in der neuen Liste die Dateien ohne das Datumsformat raussuchen soll.
Code:
List<File> filesnew = ReadDrive.listFilesContainingPattern(files, ".*\\.jpg$");
List<File> filesnew2 = ReadDrive.listFilesContainingPattern(filesnew, ".*(!(_[0-9]{4}-[0-9]{2}-[0-9]{2})).*");
mit Ausrufezeichen, so wie in einer if-Abfrage funktioniert das nicht. Das ^ funktioniert ja auch nur in den eckigen Klammern...
Hat jemand ne Ahnung, wie man das lösen könnte?