Wenn ich dich richtig verstehe gehören die beiden zusammen:
dateiname.jpg ==> dateiname
dateiname_123.jpg ==> dateiname
Richtig. Dies soll darstellen, dass der Suffix ignoriert werden soll.
aber das gehört nicht dazu:
dateiname_123_abc.jpg ==> dateiname_123_abc
Doch. Das soll darstellen, dass so eine Kombination innerhalb des Dateinamens gültig ist und im Ergebnis erscheinen soll. Allerdings habe ich so einen Fall praktisch nicht. Es können aber im Dateinamen durchaus mehrere Unterstriche auftauchen und es soll dann nur besagter Suffix entfallen.
Das Problem ist doch, wenn du nach _xxx (x = Zahl) suchst und ersetzen willst, musst du gleichzeitig schauen, ob danach noch ein _cccc ( c = zeichen ) kommt. also du musst vorher Wissen, was nachher noch folgen wird. Das ist ein lookbehind.
Ok. Dann können wir alles nach _xxx (x = Zahl) ignorieren. Geht es dann?
Ralf