# Dateiname zu Tag

**URL:** https://community.mp3tag.de/t/dateiname-zu-tag/7660
**Category:** Allgemein
**Created:** [December 27, 2008, 10:39pm UTC](https://community.mp3tag.de/t/dateiname-zu-tag/7660 "2008-12-27T22:39:53Z")
**Posts on this page:** 11
**Page:** 1

<div class="post-metadata">

### Author: ![radix](https://community.mp3tag.de/user_avatar/community.mp3tag.de/radix/32/23384_2.png) [@radix](https://community.mp3tag.de/u/radix)
#### Post date: [December 27, 2008, 10:39pm UTC](https://community.mp3tag.de/t/dateiname-zu-tag/7660/1 "2008-12-27T22:39:53Z")

</div>

Hallo

nach stundenlanger Suche im Forum erstelle ich ein neues Thema, da ich zwar [ähnliches](https://community.mp3tag.de/t/5914/1) gefunden habe aber nichts zu meinem Problem.

ich habe mp3s wo der Dateiname wie folgt aussieht.

Hans Muster 01 - MusterliedA  
Hans Muster 02 - MusterliedB  
Hans Muster 03 - MusterliedC  
...

Wenn ich nun bei "Dateiname - Tag" den Sting _%artist% %track% - %title%_ benutze kommt aber immer durch das Leerzeichen im Vor- und Nachname folgendes Ergebnis.

Interpret: Hans  
Track: Muster 01  
Titel: MusterliedA

Interpret: Hans  
Track: Muster 02  
MusterliedB

Interpret: Hans  
Track: Muster 03  
Titel: MusterliedC  
.....

Kann mann Mp3Tag dazubringen, das er nur zahlen als Track übernimmt.

Oder kann ich das erst so per _%artist% - %title%_ übernehmen das Artist "Hans Muster 01" und Titel "MusterliedA" ist und dann per Aktion ändern wobei ich dafür auch einen mir unbekannten befehl benötige.

Liebe Grüße

Vielen Dank

Björn

---

<div class="post-metadata">

### Author: ![ci3nt](https://community.mp3tag.de/letter_avatar_proxy/v4/letter/c/5daacb/32.png) [@ci3nt](https://community.mp3tag.de/u/ci3nt)
#### Post date: [December 27, 2008, 11:46pm UTC](https://community.mp3tag.de/t/dateiname-zu-tag/7660/2 "2008-12-27T23:46:59Z")

</div>

Hallo,

du kannst das soweit ich weiß nicht mit dem Konverter "Dateiname - Tag" machen, aber der ist prizipiell nur ein Spezialfall von der Aktion "Tag-Felder importieren".  
Du kannst diese benutzen und dann dort als Quellformat folgendes eingeben:  
$left(%\_filename%,$sub($strstr(%\_filename%, - ),4)) - $mid(%\_filename%,$sub($strstr(%\_filename%, - ),2),2) - $right(%\_filename%,$sub($len(%\_filename%),$add($strstr(%\_filename%, - ),2)))

Als Formatstring musst du dann schreiben:  
%artist% - %track% - %title%

Der Quellformatstring macht aus dem String "%variabel% %beliebige zwei Zeichen% - %variabel%" den String "%variabel% - %beliebige zwei Zeichen% - %variabel%". Der Dateiname muss also auch genau so aufgebaut sein, da der Quellformatstring z.B. nicht nach Zahlen sucht. Da aber deine Dateinamen so lauten, sollte es eigentlich klappen.

Eine Suchfunktion nach Zahlen besteht übrigens indirekt im Skriptbefehl "$isdigit()".

mfG  
gnor

---

<div class="post-metadata">

### Author: ![DetlevD](https://community.mp3tag.de/user_avatar/community.mp3tag.de/detlevd/32/123_2.png) [@DetlevD](https://community.mp3tag.de/u/DetlevD)
#### Post date: [December 28, 2008, 12:30pm UTC](https://community.mp3tag.de/t/dateiname-zu-tag/7660/3 "2008-12-28T12:30:06Z")

</div>

> [@radix](#):
>
> ... ich habe mp3s wo der Dateiname wie folgt aussieht ... Hans Muster 01 - MusterliedA ... Kann mann Mp3Tag dazubringen, das er nur zahlen als Track übernimmt. ...

Vielleicht passt es so?

 

**Konverter** | **Dateiname - Tag** | **ALT+2**

 

_Formatstring auswählen_

 

Formatstring: Hans Muster 01 - MusterliedA.mp3  
**%artist% %artist% %track% - %title%**

 

Vorschau  
**artist** | Hans Muster  
**track** | 01  
**title** | MusterliedA

 

DD.20081228.1430.CET

---

<div class="post-metadata">

### Author: ![radix](https://community.mp3tag.de/user_avatar/community.mp3tag.de/radix/32/23384_2.png) [@radix](https://community.mp3tag.de/u/radix)
#### Post date: [December 29, 2008, 10:30am UTC](https://community.mp3tag.de/t/dateiname-zu-tag/7660/4 "2008-12-29T10:30:53Z")

</div>

> [@DetlevD](#):
>
> Vielleicht passt es so?
> 
>  
> 
> **Konverter** | **Dateiname - Tag** | **ALT+2**
> 
>  
> 
> _Formatstring auswählen_
> 
>  
> 
> Formatstring: Hans Muster 01 - MusterliedA.mp3  
> **%artist% %artist% %track% - %title%**
> 
>  
> 
> Vorschau  
> **artist** | Hans Muster  
> **track** | 01  
> **title** | MusterliedA
> 
>  
> 
> DD.20081228.1430.CET

> [@gnor](#):
>
> Hallo,
> 
> du kannst das soweit ich weiß nicht mit dem Konverter "Dateiname - Tag" machen, aber der ist prizipiell nur ein Spezialfall von der Aktion "Tag-Felder importieren".  
> Du kannst diese benutzen und dann dort als Quellformat folgendes eingeben:  
> $left(%\_filename%,$sub($strstr(%\_filename%, - ),4)) - $mid(%\_filename%,$sub($strstr(%\_filename%, - ),2),2) - $right(%\_filename%,$sub($len(%\_filename%),$add($strstr(%\_filename%, - ),2)))
> 
> Als Formatstring musst du dann schreiben:  
> %artist% - %track% - %title%
> 
> Der Quellformatstring macht aus dem String "%variabel% %beliebige zwei Zeichen% - %variabel%" den String "%variabel% - %beliebige zwei Zeichen% - %variabel%". Der Dateiname muss also auch genau so aufgebaut sein, da der Quellformatstring z.B. nicht nach Zahlen sucht. Da aber deine Dateinamen so lauten, sollte es eigentlich klappen.
> 
> Eine Suchfunktion nach Zahlen besteht übrigens indirekt im Skriptbefehl "$isdigit()".
> 
> mfG  
> gnor

Hallo Danke für die Tipps

Das hat mehr sehr weiter geholfen.

Grüße

Björn

---

<div class="post-metadata">

### Author: ![humann](https://community.mp3tag.de/letter_avatar_proxy/v4/letter/h/838e76/32.png) [@humann](https://community.mp3tag.de/u/humann)
#### Post date: [December 31, 2008, 3:09pm UTC](https://community.mp3tag.de/t/dateiname-zu-tag/7660/5 "2008-12-31T15:09:51Z")

</div>

das ist ja alles ganz schön aber wie bekomme ich das hin wenn ich den dateiname -\> Tag formatstring:  
%dummy% %artist% - %titel%

hab schon ziemlich viel mit den scriptbefehlen rumexperimentiert aber bin zu keinem schlüssigem ergebniss gekommen  
bsp:

$left(%\_filename%,3) - $mid(%\_filename%,3,$strstr(%\_filename%)) - $right(%\_filename%,$sub($len(%\_filename%),$add($strstr(%\_filename%, - ),2)))

hoffe ihr könnt mir helfen und ich danke schonmal im vorraus

~Gruß~  
HumanN

---

<div class="post-metadata">

### Author: ![ci3nt](https://community.mp3tag.de/letter_avatar_proxy/v4/letter/c/5daacb/32.png) [@ci3nt](https://community.mp3tag.de/u/ci3nt)
#### Post date: [January 1, 2009, 12:21am UTC](https://community.mp3tag.de/t/dateiname-zu-tag/7660/6 "2009-01-01T00:21:26Z")

</div>

Hallo,

ich hab das jetzt so verstanden, das du als Dateinamen dieses Muster hast:  
%dummy% %artist% - %titel%,  
wobei %dummy% aus mehreren Wörtern bestehen kann. Stimmt das?

Bei deinem Beispiel:  
$left(%\_filename%,3) - $mid(%\_filename%,3,$strstr(%\_filename%)) - $right(%\_filename%,$sub($len(%\_filename%),$add($strstr(%\_filename%, - ),2)))

Zum einem: Wieso nimmt der als linken Teil nur die ersten 3 Zeichen?  
Zum andern fehlt bei $strstr(%\_filename%) nach was er suchen soll.

Frohes neues Jahr  
gnor

---

<div class="post-metadata">

### Author: ![humann](https://community.mp3tag.de/letter_avatar_proxy/v4/letter/h/838e76/32.png) [@humann](https://community.mp3tag.de/u/humann)
#### Post date: [January 1, 2009, 10:06am UTC](https://community.mp3tag.de/t/dateiname-zu-tag/7660/7 "2009-01-01T10:06:46Z")

</div>

dir auch erstmal frohes neues

das %dummy% steht bei mir für die Tracknummer die ich nicht speichern möchte sonder neu durchnummerieren ich habe noch ein wenig rumprobiert und bin zu diesem code gekommen:

$left(%\_filename%,$sub($strstr(%\_filename%, - ),1),2) $mid(%\_filename%,$sub($strstr(%\_filename%, - ))) - $right(%\_filename%,$sub($len(%\_filename%),$add($strstr(%\_filename%, - ),2)))

dieser hängt bei artist zwar ein leerzeichen hinter aber das hab ich dann einfach mit der $trim funktion aufgehoben 😛

danke euch allen ihr habt mir ne menge zeit erspart

_eine frage hätte ich noch wieso erkennt der kein - wenn ich ihn in einem if syntax verwende z.B:  
$if($mid(%\_filename%,3,1)=.,$replace(%\_filename%,., ),$if($mid(%\_filename%,3,1)='-',$replace(%\_filename%,'-', ),$if($mid(%\_filename%,4,1)=.,$replace(%\_filename%,., ),$if($mid(%\_filename%,4,1)='-',$replace(%\_filename%,'-', ),$if($mid(%\_filename%,5,1)=.,$replace(%\_filename%,., ),$if($mid(%\_filename%,5,1)='-',$replace(%\_filename%,'-', )))))))  
ihr seht das ich das - schon in ' gesetzt habe aber leider ohne erfolg  
und gibt es eine möglichkeit nur den ersten - zu bearbeiten_

ok das Problem hab ich jetzt mit regulären ausdrücken behoben  
  
_jetzt wollte ich das Jahr ,das in Klammern steht, aus dem %\_parent\_directory% lesen  
das wäre dann glaub ich auch mein letztes anliegen 😉_

hab ich auch ^^ jetzt nurnoch das jahr in klammern aus dem Albumnamen entfernen

hat sich auch erledigt 😉 jetzt bin ich fertig mit meinem code 😃  
~Gruß~  
HumanN

---

<div class="post-metadata">

### Author: ![ci3nt](https://community.mp3tag.de/letter_avatar_proxy/v4/letter/c/5daacb/32.png) [@ci3nt](https://community.mp3tag.de/u/ci3nt)
#### Post date: [January 1, 2009, 8:51pm UTC](https://community.mp3tag.de/t/dateiname-zu-tag/7660/8 "2009-01-01T20:51:24Z")

</div>

Hallo,

wenn du den Track meinst, wieso kannst du dann nicht ganz normal "%dummy% %artist% - %title%" verwenden?

Dann scheinen irgendwie bei deinem Code ... $mid(%\_filename%,$sub($strstr(%\_filename%, - ))) ...  
auch Angaben zu fehlen. Was subtrahiert der denn von der Position, an der " - " steht? Außerdem wird bei deinem $mid-Befehl auch nur ein Zeichen zurückgegeben (ich weiß jetzt nicht, ob das beabsichtigt ist).

Zu deiner if-Bedingung: Du kannst nicht mit "=" vergleichen. Du musst da $eql() verwenden. Wahrscheinlich erkennt er deshalb den "-" nicht.

mfG  
gnor

---

<div class="post-metadata">

### Author: ![humann](https://community.mp3tag.de/letter_avatar_proxy/v4/letter/h/838e76/32.png) [@humann](https://community.mp3tag.de/u/humann)
#### Post date: [January 1, 2009, 11:22pm UTC](https://community.mp3tag.de/t/dateiname-zu-tag/7660/9 "2009-01-01T23:22:07Z")

</div>

hey

das mit dem mid kapier ich grad selber nicht und den if-befehl habe ich wie gesagt mit regulären ausdrücken ersetzt.

mit dem mid befehl is irgendwie ein hammer,dass das klappt obwohl der code vollkommener schwachsinn ist ^^ naja ich hab einfach so lange rumprobiert bis es hin haute (ich hatte noch nicht die skriptbefehlsliste)

ich hab nochmal nen paar andere codes ausgetüftelt die jedoch kein ergebnis lieferten z.B.:

$left(%\_filename%,$sub($strstr(%\_filename%, ),1),2) $mid(%\_filename%,$add($strstr(%\_filename%, - ),1),$sub($strrchr(%\_filename%, - ),$strstr(%\_filename%, )) - $right(%\_filename%,$sub($len(%\_filename%),$add($strstr(%\_filename%, - ),2)))

ich verstehe einfach nicht was ich falsch mache  
aber das ist nicht so schlimm da ich ja den "falschen" code habe der trotzdem geht (wenn man ihn mit trim bearbeitet)

> [@](#):
>
> wenn du den Track meinst, wieso kannst du dann nicht ganz normal "%dummy% %artist% - %title%" verwenden?

ich wollte die aktionen automatisieren also

1. auf normalform bringen (\_-\> ,usw.)
2. dateiname -\> tag
3. durchnummerieren
4. tag -\> dateiname
5. evtl. albumname und jahr aus verzeichnis lesen

und das ist mir geglückt  
danke nomal 😉

Edit:  
ich hab viel zu kompliziert gedacht es geht einfacher [(\d\*)\ (._)\ -\ (._)]  
~Gruß~  
HumanN

---

<div class="post-metadata">

### Author: ![radix](https://community.mp3tag.de/user_avatar/community.mp3tag.de/radix/32/23384_2.png) [@radix](https://community.mp3tag.de/u/radix)
#### Post date: [January 21, 2010, 12:07am UTC](https://community.mp3tag.de/t/dateiname-zu-tag/7660/10 "2010-01-21T00:07:37Z")

</div>

Hallo

geht es nicht auch mit diesem

%\_filename% und ^\s\*[0-9]+\s\*

so das aber auch bei solchen der richtige als track erkannt wird.

3 Tage Regen 01 - SchlechtesWetter  
 -

Versuche es aber im Moment mit:

"Tagfelder - Importieren" -\> "Quellformat":

$sub($isdigit(%\_filename%),%\_filename%)

$sub(x,y) substracts y from x.  
$isdigit(x) returns true if character x is a decimal number.

Bekomme aber -3 raus als track.

---

<div class="post-metadata">

### Author: ![ohrenkino](https://community.mp3tag.de/user_avatar/community.mp3tag.de/ohrenkino/32/4843_2.png) [@ohrenkino](https://community.mp3tag.de/u/ohrenkino)
#### Post date: [January 21, 2010, 5:39am UTC](https://community.mp3tag.de/t/dateiname-zu-tag/7660/11 "2010-01-21T05:39:12Z")

</div>

Wenn die Dateinamen wirklich alle ne führende Null haben, lautet der Import-String:

%artist% 0%track% - %title"

da die führende Null ein guter Trenner ist.

Alternativ:  
Wenn alle Künstler aus Vornamen und Nachnamen bestehen, dann die Zahl kommt, kannst Du mit folgender Maske arbeiten:  
%artist% %artist% %track% %title%  
Die Menge der aneinandergehängten %artist% %artist% hängt dann ab von der Menge der Leerzeichen im Künstlernamen.  
Vielleicht ist es sinnvoll, die Sammlung in mehreren Stufen umzubenennen.  
Dabei ist es immer günstig, einen Trenner zwischen den Feldern zu nehmen, der nur in absoluten Ausnahmefällen verwendet wird - nach meiner Erfahrung ist dies der Unterstrich \_
