Hallo,
Ich habe eine Liste von Dateinamen und möchte sie filtern nach Dateiendung.
Als Filter ist folgendes möglich: .doc,.pdf oder alle . oder a.edm oder b.doc.
mehrere Filter sind mit Komma getrennt.
wie kann ich das am besten realisieren mit regex? oder gibt es andere Möglichkeiten?
Wenn es die Namen real gibt:
Directory.GetFiles
Wenn nicht, brauchst Du meines Wissens nach Regex:
https://regex101.com/r/yzz4lJ/1
Es gibt ja noch die Path.GetExtension Methode.
Damit kann man dann einen Stringvergleich machen und braucht keine Regenechse.
Falls komplexere Filter möglich sind, dann ist "Wildcard Pattern Matching" das passende Stichwort dazu, s. z.B. Wildcard Pattern Matching (auch wenn der C#-Code nicht optimal ist, da das Original auf C bzw. C++ basiert).
In Matching strings with wildcard sind noch einige Antworten, um daraus ein Regex zu erzeugen.