# Aktion; Tag-formatieren aus Ordnernamen

**URL:** https://community.mp3tag.de/t/aktion-tag-formatieren-aus-ordnernamen/64596
**Category:** Allgemein
**Created:** [May 4, 2024, 12:02pm UTC](https://community.mp3tag.de/t/aktion-tag-formatieren-aus-ordnernamen/64596 "2024-05-04T12:02:30Z")
**Posts on this page:** 12
**Page:** 1

<div class="post-metadata">

### Author: ![data.enterprise](https://community.mp3tag.de/letter_avatar_proxy/v4/letter/d/9f8e36/32.png) [@data.enterprise](https://community.mp3tag.de/u/data.enterprise)
#### Post date: [May 4, 2024, 12:02pm UTC](https://community.mp3tag.de/t/aktion-tag-formatieren-aus-ordnernamen/64596/1 "2024-05-04T12:02:30Z")

</div>

Hallo zusammen

Es gibt schon einiges zu lesen zu dem Thema, aber bei mir funktioniert es nicht.

Ich habe einen Ordner der beispielsweise  
d:\_Daten für (2000) MP3\Testordner 3800\voll tolles album von (2022)  
lautet.

Das Feld %Year% der in diesm Ordner enthaltenen MP3 soll auf 2022 gesetzt werden. Den letzten vier Ziffern eben aus dem Ordnernamen.  
Die Regex dazu kann  
`\d{4}(?=[^\d]*$)` oder auch `\b\d{4}(?=[^\d]*$)` lauten. Beide geben die Zahl 2022 zurück.

Ich bekomme aber keine Aktion hin, welche den Wert auch in das Feld schreibt.

Kann mir bitte jemand zur Hand gehen. Die Aktion verwendet natürlich %\_directory%.  
Ich sitze da schon seit 2 Tagen dran und bekomme Haarausfall 😉

Gruß  
Martin

---

<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: [May 4, 2024, 12:16pm UTC](https://community.mp3tag.de/t/aktion-tag-formatieren-aus-ordnernamen/64596/2 "2024-05-04T12:16:09Z")

</div>

Wenn der Ordner

> [@data.enterprise](#):
>
> voll tolles album von (2022)

heißt,  
nimm eine Aktion vom Typ "Tag-Feld importieren" mit  
Quelle: %\_directory%  
Ziel Format string: %dummy%(%year%)

---

<div class="post-metadata">

### Author: ![data.enterprise](https://community.mp3tag.de/letter_avatar_proxy/v4/letter/d/9f8e36/32.png) [@data.enterprise](https://community.mp3tag.de/u/data.enterprise)
#### Post date: [May 4, 2024, 1:19pm UTC](https://community.mp3tag.de/t/aktion-tag-formatieren-aus-ordnernamen/64596/3 "2024-05-04T13:19:35Z")

</div>

Danke für die schnelle Antwort.

Nun ja, Es ist leider nur die halbe Wahrheit. Unmengen der Ordner haben eine weitere Klammer oder sind sogar verschachtelt.  
Daher wollte ich ja die vier letzten Ziffern eben mit Regex filtern. Dazu kommen noch die Parent Directorys mit CD1|CD2|CD3 etc. und ein if Construkt drumherum.

Aber eben das mit der Regex klappt schon nicht.

---

<div class="post-metadata">

### Author: ![data.enterprise](https://community.mp3tag.de/letter_avatar_proxy/v4/letter/d/9f8e36/32.png) [@data.enterprise](https://community.mp3tag.de/u/data.enterprise)
#### Post date: [May 4, 2024, 1:23pm UTC](https://community.mp3tag.de/t/aktion-tag-formatieren-aus-ordnernamen/64596/4 "2024-05-04T13:23:43Z")

</div>

Besten Dank fürs korrigieren der RegEx um die "Sterne". Ist wir nicht aufgefallen.

---

<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: [May 4, 2024, 1:24pm UTC](https://community.mp3tag.de/t/aktion-tag-formatieren-aus-ordnernamen/64596/5 "2024-05-04T13:24:50Z")

</div>

Es wird immer der aktuelle Ordner genommen - wenn der deinem Beispiel entspricht, dann klappt das.  
Hast du den Vorschlag ausprobiert?

Ansonsten: Ich unterstelle, dass so eine AKtion so ziemlich 1x im Leben einer Datei vorkommt.  
Und dafür ist es dann ggf. sinnvoll, doch Konverter\>Dateiname-Tag zu nehmen, weil es da eine Vorschau gibt.  
Für dein Beispiel würde ich folgendes nehmen:  
`%dummy%(%year%)\%dummy%`

Und da es bei solchen Mustern immer auf jedes Zeichen ankommt, ist ein konkretes, echtes Beispiel oft hilfreicher als eine sinngemäße Darstellung.

---

<div class="post-metadata">

### Author: ![data.enterprise](https://community.mp3tag.de/letter_avatar_proxy/v4/letter/d/9f8e36/32.png) [@data.enterprise](https://community.mp3tag.de/u/data.enterprise)
#### Post date: [May 4, 2024, 4:12pm UTC](https://community.mp3tag.de/t/aktion-tag-formatieren-aus-ordnernamen/64596/6 "2024-05-04T16:12:02Z")

</div>

Hi ohrenkino

Deine Weg kann eine Lösung sein. Dennoch sitze ich vor einer großen Sammlung (ich frage für einen Freund) in der ich vieles automatisch laufen lasse möchte.  
Hast du die Regex an meinem Beispiel mal probiert? Mach es doch bitte mal. Ich habe schon komplexere gehabt und häufiger auch in Powershell. Aber hier fehlt mir irgendeine Kleinigkeit.

LG

---

<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: [May 4, 2024, 4:44pm UTC](https://community.mp3tag.de/t/aktion-tag-formatieren-aus-ordnernamen/64596/7 "2024-05-04T16:44:10Z")

</div>

> [@data.enterprise](#):
>
> Hast du die Regex an meinem Beispiel mal probiert?

Um die richtig zu testen, müsste ich ja möglichst einen echten Pfad haben - und den habe ich nicht, speziell, wenn du meinst

> [@data.enterprise](#):
>
> Ordner haben eine weitere Klammer oder sind sogar verschachtelt....Dazu kommen noch die Parent Directorys mit CD1|CD2|CD3 etc. und ein if Construkt drumherum

Also wird das schwierig, den Ausdruck zu testen.  
Wieso bestehst du auf einem regulären Ausdruck, wenn die Aktion vom Typ "Tag-Feld importieren" ähnliche Dienste leistet.  
Ich bin mir recht sicher, dass man in einer Aktionsgruppe mehrere Aktionen desselben Typs aber mit unterschiedlichen Mustern unterbringen kann. EIne Umformung findet dann nur statt, wenn es Treffer gab.

Für mich gibt z.b.  
`$regexp('voll tolles album von (2022)',.*(\d{4}).*,$1)`  
2022 zurück

---

<div class="post-metadata">

### Author: ![data.enterprise](https://community.mp3tag.de/letter_avatar_proxy/v4/letter/d/9f8e36/32.png) [@data.enterprise](https://community.mp3tag.de/u/data.enterprise)
#### Post date: [May 5, 2024, 8:39am UTC](https://community.mp3tag.de/t/aktion-tag-formatieren-aus-ordnernamen/64596/8 "2024-05-05T08:39:13Z")

</div>

Ja genau

Der Ausdruck funktioniert.  
Nur nicht, wenn ich ihn einbinde und das Tag Year befüllen will. Da kommt dann nix an.  
Es reicht ja schon einen Pfad wie beschrieben anzulegen, eine Datei rein zu packen und die Aktion darauf loszulassen. Wenn ich die regex weglasse und nur %\_directory% nehme, wird auch schön brav der Ordnername geschrieben.

---

<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: [May 5, 2024, 8:45am UTC](https://community.mp3tag.de/t/aktion-tag-formatieren-aus-ordnernamen/64596/9 "2024-05-05T08:45:38Z")

</div>

> [@data.enterprise](#):
>
> %directory%

Die Eigenschaft wird mit %\_directory% und nicht %directory% referenziert.  
Zeig mir doch bitte den eingefügten und modifizierten Ausdruck im Konverter\>Tag-Tag.  
Da gibt es eine Vorschau. Und die müsste dir das Resultat zeigen.

---

<div class="post-metadata">

### Author: ![data.enterprise](https://community.mp3tag.de/letter_avatar_proxy/v4/letter/d/9f8e36/32.png) [@data.enterprise](https://community.mp3tag.de/u/data.enterprise)
#### Post date: [May 5, 2024, 6:28pm UTC](https://community.mp3tag.de/t/aktion-tag-formatieren-aus-ordnernamen/64596/10 "2024-05-05T18:28:16Z")

</div>

Typo, habe ich korrigiert. Danke für den Hinweis.

Hier der Fehler aus der Vorschau:

```auto
C:\_temp\Soundmix Pro Disc 091 (January 2002)\01 - roman - Lied.mp3
  "" ->
  "REGEXP ERROR: Regular expression

```

Invalid preceding regular expression prior to repetition operator. The error occurred while parsing the regular expression: '\d{4}(?=\*\>\>\>HERE\>\>\>$)'."

In den Regex-Testern wie beispielsweise unter [regex101.com](http://regex101.com), werden keine Fehler aufgezeigt.  
 ![image](https://community.mp3tag.de/uploads/default/original/3X/e/d/ed6e29c5ee5824b9e0abc61d5fe26f64e5b19b85.png)

---

<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: [May 5, 2024, 6:39pm UTC](https://community.mp3tag.de/t/aktion-tag-formatieren-aus-ordnernamen/64596/11 "2024-05-05T18:39:03Z")

</div>

> [@data.enterprise](#):
>
> In den Regex-Testern wie beispielsweise unter [regex101.com](http://regex101.com), werden keine Fehler aufgezeigt

Das ist schon richtig - aber es gibt auch keinen Treffer.

Da MP3tag sein eigenes Flavour verwendet, ist eigentlich nur die Vorschau in Konverter\>Tag-Tag ein guter Anhalt.  
Ich verstehe nicht so ganz, wieso du weiterhin auf deinem Ausdruck bestehst, wenn es doch einen Ausdruck gibt, der funktioniert:  
Hier der Test mit dem Pfad von dir:  
`$regexp('C:_temp\Soundmix Pro Disc 091 (January 2002)\01 - roman - Lied.mp3',.*(\d{4}).*,$1)`  
führt zu "2002".  
 ![grafik](https://community.mp3tag.de/uploads/default/original/3X/e/0/e0de90464d90ba6c481fe8831ae6ce9b065a39fa.png)

---

<div class="post-metadata">

### Author: ![system](https://community.mp3tag.de/uploads/default/original/2X/c/ce7035d426cb755a7916793326d23b465222a407.png) [@system](https://community.mp3tag.de/u/system)
#### Post date: [June 4, 2024, 6:39pm UTC](https://community.mp3tag.de/t/aktion-tag-formatieren-aus-ordnernamen/64596/12 "2024-06-04T18:39:11Z")

</div>

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.
