Bestimmte Zeichen an bestimmten Stellen löschen

Hallo Leute.

Ich bin gerade dabei meine ganzen MP3 Files zu editieren.

Momentan hab ich ein kleines Problem.
"Artist - Title -.mp3"
So sieht es aus, aber der Bindestrich & das Leerzeichen am Ende muss raus:
Artist - Title.mp3

Wie genau kann ich das machen bzw. einstellen?

Danke.

Zuerst solltest du die Tags füllen, bevor du nur am Dateinamen rumnestelst.
Und aus den Tags kann man dann ganz wunderbar die Dateinamen neu erzeugen lassen.
Das ginge mit dem Konverter "Dateiname - Tag"
Gib ein:
%artist% - %title% -

Dann kannst du den Dateinamen neu erzeugen lassen mit dem Konverter "Tag-Dateiname"
Gib ein:
%artist% - %title%

Und wenn das alles nichts ist, gibt es auch noch den Konverter "Dateiname-Dateiname"
Da gib als Quelle ein:
%1 - %2 -
Ziel:
%1 - %2

Noch eine Bemerkung: wenn der Dateiname ein Informationsspeicher sein soll, aus dem später die Tags gefüllt werden sollen, ist es besser, ein Trennzeichen zu verwenden, dass nur selten im Text vorkommt, wie der Unterstrich_. Der Bindestrich kommt oft vor und macht einen Import schwieriger.

Ja, so ist es.
In einem Ordner habe ich ca. 17.000 Files, und 3/4 der Tracks hab ich schon bearbeitet.
Ich bearbeite (größenteils) die Tracks im Ordner selbst, und zwar nur den Dateinamen.
Habe ich alle fertig, konvertiere ich den Dateinamen in die Tags.

Bislang ist für mich nur Artist und Titel wichtig. Der Rest wie Jahr, Genre usw. spielt keine Rolle.

Ich hab teilweise Tracks die eine unmögliche Benennung haben.

Artist - Title - (Dirty With Mixshow Intro-): Das geht mal überhaupt nicht.
Artist - Title (Club): So soll es aussehen. Dirty, With und Intro können raus. Statt 'Mixshow' soll 'Club' hin.

Ich mach das so, dass ich 'Dirty', 'With' und 'Intro' mit MP3Tag lösche, und 'Mixshow' durch 'Club' ersetze.
Danach bleiben aber die Klammern, das Bindestrich und die unnötigen Leerzeichen über.

Gibt es dafür eine Lösung?

Sorry, das ist völlgi durch die Brust ins Auge.
Dateinamen unterliegen bestimmten Beschränkungen hinsichtlich zu verwendenden Zeichen und sind erstmal nur eine einzige Soße von Buchstaben.
Wenn du den umgekehrten Weg gehen würdest und zuerst die Tags füllen und dann die Dateinamen erzeugen, wäre es viel einfacher, weil du mit den Feldern der tags schon eine strukturierte Information hast. Das macht die EIngrenzung leichter.

Um Mixshow in Club zu verwandeln, gibt es eine einfache Aktion vom Typ "Ersetzen".
Dieselbe Aktion kannst du verwenden, um andere Wörter zu ersetzen.
Ach ja: das Tag Panel hilft dir dabei, mehrere Dateien auf einmal zu bearbeiten - mit deiner Dateinamen-Methode musst du jede Datei einzeln anfassen ... wer's mag ...

1 Like

Die Dateinamen brauchen nur diese einzige Soße. Exotische Zeichen hau ich alle raus. Auch bei Spanischen E's usw., die werden alle ersetzt.

Ja das weiß ich. Das Problem dabei ist nur, dass unnötige Leerzeichen entstehen.

Beispiel.
Artist1 Ft. Aritst2 - Titel - (Remix Dirty With Mixshow Intro-).mp3
Soll so aussehen:
Artist1 feat. Aritst2 - Titel (Rmx) (Club).mp3

Ft. => feat.
Remix => Rmx, separat in Klammern.
Dirty, With, Intro und weiteren Gedöns brauche ich nicht.
Mixshow => Club, auch separat in Klammern.

Das ändern bzw. ersetzen der Wörter ist kein Problem.

a ) wie kann ich zB das Remix (später Rmx) separat in Klammern setzen?
b ) Wie lösche ich den Bindestrich nach 'Birthday Song' ?
c ) Wie lösche ich den Bindestrich direkt nach 'Intro' ?
d ) Und wie lösche ich unnötige Leerzeichen?

Das ist wohl wahr - aber es ist eben viel einfacher, strukturierte Daten zu bearbeiten und nicht immer wieder ganz am Anfang eines unstrukturierten Strings anzufangen.

zu a: wenn ersetzen kein Problem ist:
Suche Remix, ersetze durch (Rmx)
zu c: Suche Intro-, ersetze durch Intro - oder möchtest du alle -), die am Datensatz-Ende stehen durch nichts ersetzen? Ersetzen mit regulärem Ausdruck: Suchen: (.*)-)$
ersetzen: $1
zu d: Es gibt eine $trim()-Funktion, die super für ein Feld funktioniert (und auch irgendwie für den ganzen Dateinamen) aber eben besser, wenn du erst die Felder füllst.

Wenn ich das mache kommt '((Rmx)' bei raus.

Nein, das Intro kann komplett raus. Wenn ich es lösche bleibt '-)' übrig.

Was meinst du mit Suchen?
Ich habs so versucht:
Ersetzen mit regulärem Ausdruck
Feld: _FILENAME
Regulärer Ausdruck: (.*)-)$
Treffer ersetzen durch: $1
Ergebnis: passiert nichts. Okay, was mache ich falsch?

Von welchen Feldern genau sprichst du? Filename oder Tagnames?
Nach dem bearbeiten des Tracks bleiben immer noch die unnötigen Leerzeichen nach dem Titel übrig, das - und -) auch.

Ich dachte, es war klar, dass mein Plädoyer eindeutig in Richtung Tags geht. Wenn du nur mit den Dateinamen rumbasteln willst, ist MP3tag m.E. nicht die richtige Wahl. Da gibt es schöne Programme, die sich mit dem Dateisystem auseinandersetzen.
Der Fehler beim Ersetzen mit regulärem Ausdruck ist, dass das "-)" eben am Ende (=$) eines Felds stehen muss. Beim Dateinamen kommt da ggf. noch das ".mp3" dazu ...
Solange sich deine Fragen weiterhin auf die reine Manipulation des Dateinamens beziehen, stelle ich hiermit meine Unterstützung ein.

Manipulieren würde ich zwar nicht sagen, aber wenn du das so siehst ist das deine Sache.

MP3Tag kann auch die Dateinamen ändern, so wie der User es haben möchte. Wenn du aber deinen Support mir gegenüber einstellen möchtest, sag ich mal: Danke für deine bisherige Unterstützung.

Konverter | Dateiname - Dateiname | ALT+3
Maske über alten Dateinamen:
%1 -
Maske über neuen Dateinamen:
%1
Vorschau
Artist - Title.mp3

... oder ...
Konverter | Dateiname - Dateiname | ALT+3
Maske über alten Dateinamen:
%1
Maske über neuen Dateinamen:
$trimRight(%1,' -')
Vorschau
Artist - Title.mp3

... oder ...
Konverter | Tag - Tag | ALT+5
Feld:
_FILENAME
Formatstring:
$trimRight(%_FILENAME%,' -')
Vorschau
Artist - Title

... oder ...

Anfang Aktionengruppe TrimRight Filename

Aktion #1
Aktionstyp 5: Tagfeld formatieren
Feld _______: _FILENAME
Formatstring: $trimRight(%_FILENAME%,' -')
Ende Aktionengruppe TrimRight Filename (1 Aktion)

DD.20140709.1916.CEST

Hallo,
mein Problem:
1.Beispiel Dateiname:
Adele - Someone Like You
Übernahme des Dateinamens in den Tag klappt super mit der Konverterfunktion.
2.Beispiel Dateiname:
01 Adele - Someone Like You
hier wird in das Interpretenfeld "01 Adele" geschrieben aber die ersten 3 Stellen sollen weg (entferne ich bisher einzeln)
Bin sicher dass es mit dem Konverter eine einfache Lösung gibt.
Wäre für jede Hilfe dankbar!

Konverter>Dateiname - Tag
Format String: %dummy% %artist% - %title%
(schmeißt die 01 weg) oder
Format String: %track% %artist% - %title%
behält die 01 und speichert sie im Feld TRACK.

Vielen Dank für die Anleitung, funktioniert jetzt wie ich es möchte mit beiden Möglichkeiten. Wieder was nützliches gelernt.