Wie verschiebt man bestimmte Textteile innerhalb Tag?


#1

Wenn ich ein Stück taggen will, dessen Filename so heisst:
02-janet_jackson-so_excited_feat_khia.mp3

und im Tag-Interpret steht:
Janet Jackson

und im Tag-Titel steht:
So excited feat Khia

Wie bringe ich es fertig, dass im Interpret schlussendlich
Janet Jackson feat. Khia

steht und im Titel nur noch
So excited

(Wie ich aus "feat" "feat." mache ist klar.
Aber wie move ich den Teil "feat. Khia" in den Interpret?


#2

Eine Möglichkeit:

Aktion #1:
Aktionstyp: Tag-Felder formatieren
Feld: ARTIST
Formatstring: %artist%###%title%

Aktion #2:
Aktionstyp: Ersetzen mit regulären Ausdrücken
Feld: TITLE
Regulärer Ausdruck: \sfeat.?\s.+$
Treffer ersetzen durch:

[ ] Groß-/Kleinschreibung berücksichtigen

Aktion #3:
Aktionstyp: Ersetzen mit regulären Ausdrücken
Feld: ARTIST
Regulärer Ausdruck: ###.+?(?=\sfeat)
Treffer ersetzen durch:

[ ] Groß-/Kleinschreibung berücksichtigen

#3

Nur so als erste Anregung:
Konverter Dateiname - Tag:
%track%-%artist%-%title%feat%feat%
Anschliessend
Aktion Tagfeld formatieren:
ARTIST = %ARTIST% ft. %FEAT%
FEAT löschen

DD.20060922.2025


#4

Danke für die superschnelle Hilfe - dano's Aktionen funzen wunderprächtig - solange das "feat". vorkommt. Sonst gibts ein ### im Interpret-Tag.

Kann man das auch "bedingt" machen?

@DetlefD: Wenn die Tags mal nicht schon so gut abgefüllt sind, versuche ich auch Deine Version.


#5

Du kannst bei der ersten Aktion den Formatstring in $ifgreater($strstr(%title%, feat),0,%artist%###%title%,%artist%) ändern.
Dann bleibt bei fehlendem " feat" der Artist gleich und die 2 anderen Aktionen laufen ins Leere.