In AKTIONEN mehrere "Original" optionen

Hi, bin neu mit dem Programm und muss sagen - NICHT schlecht!
Da ja die Nützlichkeit jeder Software durch die Kenntnisse des Benutzers beschränkt wird
hier mal meine erste Frage.
Ich möchte im Feld ARTIST folgendes durch " Ft." ersetzen:
Featuring
Feat
feat.
ft
usw

Habs mal so versucht - Geht aber NICHT

image

Wie ist denn bitte hierfür die korrekte Syntax?
Hoffe auf kundige Hilfe
THX

Die Aktion "Ersetzen" verhält sich so, wie in vielen anderen Programmen auch:
Es wird 1 Suchbegriff gesucht und durch den bei "Ersetzen" genannten ersetzt.

Wenn also das Original wirklich so heißt "Feat,.Featuring", dann wird dafür "Ft." eingesetzt.
Bei "Original" findet keine Listenbildung statt.

Für solch grundlegende Fragen bietet sich auch ein Blick in die Dokumentation an, z.B.:

In der Dokumentation findet sich auch die Beschreibung der Scripting-Funktionen,

hier vielleicht besonders die Funktion

$replace(x,y,z) returns the string x with all occurrences of string y replaced by string z. Supports multiple parameter pairs y and z.

NEIN hier habe ich versucht.
Featuring OR Feat OR feat. OR ft

Mit Ft. zu ersetzen.
ABER so wie du schreibst, ist das so oder eben mit der richtigen syntax nicht vorgesehen??!

OHA! Das wird kompliziert (wenn man das noch nicht richtig versteht.)
Bitte vielleicht das Beispiel für die Praxis.
Wie muss das denn bitte lauten, wenn ich nach:
Featuring OR Feat OR feat. OR ft suchen möchte und den Treffer mit Ft. ersetzen möchte.

Danke für Info

In welchem Programm hast du denn jemals so eine Syntax zum Suchen und Ersetzen anwenden können?

Das Beispiel wäre:
aktion vom Typ "Tag-Feld formatieren" für ARTIST
Format string: $replace(%artist%,Featuring,Ft.,Feat,Ft.,ft,Ft.)

Aber Achtung: mindestens die letzte Kombination ist gefährlich, weil die auch in "After the Fire", "Abstürzende Brieftauben", "Bugge Wesseltoft", "Daft Punk" etc. das "ft" durch "Ft." ersetzen würde.

Das Beispiel wäre:
aktion vom Typ "Tag-Feld formatieren" für ARTIST
Format string: $replace(%artist%,Featuring,Ft.,Feat,Ft.,ft,Ft.)

Oder den gleichen Formatstring im Konverter Tag->Tag mit dem Vorteil der Voransicht auf das Ergebnis.

Ja Hallo!
Das ist ja mal wirklich ein tolles Forum!!
Vielen Dank für die schnelle Hilfe!:slightly_smiling_face:

oder halt etwas Regex-Magie wie $regexp(%artist%,\bf(ea)?t(uring|\.)?\b,Ft.,1)

müsste da nicht vor und hinter das "Ft." jeweils noch ein Leerzeichen?

Diese Klippe könnte man mit dem Format String
$replace(%artist%,Featuring,Ft.,Feat,Ft., ft , Ft. )
umschiffen. (zusätzliche Leerzeichen)

Du hast Recht.
Ich wollte nur auf diese Falle hinweisen.
Die gilt übrigens auch noch für "Feat":
Charlie Feathers,
Little Feat,
NDR featurebox

@ohrenkino
OR, AND, NOT, LIKE
Ist SQL!!

OR, AND, NOT könntest du auch in Filtern in MP3tag anwenden - und so etwas wäre das ja auch implizit bei SQL: eine Abfrage, die die Gesamtdatenmenge reduziert.
Dort wird aber wohl nicht gesucht und ersetzt wie in klassischen Textverarbeitern - und da kenne ich kein Programm, das SQL oder so verwendet für ein einfaches Ersetzen von Text-Konstanten.
Deshalb die eigentlich rhetorische Frage, welcher Textverarbeiter solche Möglichkeiten bieten würde.
Ist jetzt egal. wir haben die unterschiedlichen Möglichkeiten in MP3tag geklärt.

Und diese Falle lässt sich dann auch mit Leerzeichen davor und dahinter nicht immer umschiffen, denn hinter Feat in könnte durchaus noch ein Leerzeichen in der Quelle sein.
Beispiel: Little Feat feat. Emmylou Harris, Sam Bush & Béla Fleck

Danke !
Nun zurück zum Anfang:
Da ja die Nützlichkeit jeder Software durch die Kenntnisse des Benutzers beschränkt wird
hier nochmal meine erste Frage.als Neuling?
Wie gehts nun bitte ohne Falle?
Um anhand dieses Beispiels die Thematik besser zu verstehen :slightly_smiling_face:

Die Falle kommt doch von dir, weil du die Begriffe nicht als Wörter abgegrenzt hast. "Featuring" ist so lang, dass es vermutlich nur in dieser Buchstabenkombination und dann alleinstehend vorkommt.
Alle Abkürzungen aber brauchen noch zusätzliche Begrenzungszeichen davor oder dahinter oder an beiden Ecken, um nicht auch ersetzt zu werden, wenn sie als Wortbestandteil vokommen. Beispiele für Wortbestandteile habe ich genannt.

Dieses Problem tritt auf, wenn du die Scripting-Funktion verwendest.
Wenn du die Aktion "Ersetzen" nimmst und jeweils immer nur 1 Begriff als Original und 1 Begriff für "Ersetzen mit" festlegst und zusätzlich "Nur Wort" auswählst, gibt es dieses Problem nicht.
Dieses Problem ist übrigens keines von MP3tag, sondern der verwendeten Daten. Das würde dir auch in jedem anderen Programm bei Suchen/Ersetzen so gehen, wenn du die Rahmenbedingungen nicht beachtest.

Ok
Wie würdest Du als erfahrener Nutzer das Problem die Einträge zu verändern denn umsetzen?

Die Wege sind doch beschrieben worden.
Aber jeder Weg hat eben seine Pferdefüße:
Bei der Aktion "Ersetzen" ist die Benutzerführung eng und die Fehlerquote vermutlich gering, es ist aber mehr Fleiß erforderlich.

Die Scripting-Funktion $replace() erfordert nicht mehr ganz so viel Fleiß, aber eben schon mehr Knowhow und Voraussicht, wo die verwendeten Daten womöglich unerwünschte Nebeneffekte haben.
Die Scripting-Funktion $regexp() erfordert am wenigsten Fleiß bei der Eingabe aber noch mehr Knowhow für die Konstruktion des Codes.

Also: es ist für jeden etwas dabei, das er je nach Abschnitt auf der Lernkurve anwenden kann.

Zum konkreten Fall: im Moment wird lediglich geprüft, ob Leerzeichen vor dem zu ersetzenden Wort stehen. Ich vermute aber, es könnten auch noch Klammern in unterschiedlichster Ausprägung verwendet worden sein. oder vielleicht Bindestriche.
Wie die dann zu behandeln sind, ist dann Ergebnis der Einzelfallprüfung.

Ok Danke
Welchen code würdest du konkret anwenden❓
Anhand deines Beispiels könnte ich dann die Funktionen nachvollziehen und lernen :slightly_smiling_face:

Die Beispiele sind doch alle da:
Aktion vom Type "Ersetzen" mit Benutzerführung und allen gängigen Optionen wie Wort und Schreibweise.

oder

welches kannst du besser interpretieren?

Das geht garnicht!
Ist aber interessant
Gibts ein Link mit Erklärungen

Das andere kommt in das Aktionen fenster
Richtig?