# Aktion: "Zudieck 11.5.2007 Achtung" --\> "2007.05.11"

**URL:** https://community.mp3tag.de/t/aktion-zudieck-11-5-2007-achtung-2007-05-11/4923
**Category:** Allgemein
**Created:** [May 24, 2007, 12:11pm UTC](https://community.mp3tag.de/t/aktion-zudieck-11-5-2007-achtung-2007-05-11/4923 "2007-05-24T12:11:07Z")
**Posts on this page:** 5
**Page:** 1

<div class="post-metadata">

### Author: ![juerrie](https://community.mp3tag.de/letter_avatar_proxy/v4/letter/j/85e7bf/32.png) [@juerrie](https://community.mp3tag.de/u/juerrie)
#### Post date: [May 24, 2007, 12:11pm UTC](https://community.mp3tag.de/t/aktion-zudieck-11-5-2007-achtung-2007-05-11/4923/1 "2007-05-24T12:11:07Z")

</div>

Hallo,

vor dem Abspielen von abonnierten Podcasts möchte ich sie in eine mir genehme (Standard)Form bringen. Beim Anpassen des Titels komme ich aber mit meinem Wissen und auch mit der ForumSuche leider allein nicht weiter.

Der Titel soll mit dem Erstellungsdatum im Format "2007.05.21" neu gefüllt werden (4stellig = Jahr, 2stellig = Monat/Tag).

alt Titel: "Zudieck 11.5.2007 Achtung"  
neu Titel: "2007.05.11"

Kann mir da jemand helfen?

Vielen Dank  
Jue

PS: vielen Dank auch für dieses starke Programm!!

---

<div class="post-metadata">

### Author: ![dano](https://community.mp3tag.de/user_avatar/community.mp3tag.de/dano/32/6_2.png) [@dano](https://community.mp3tag.de/u/dano)
#### Post date: [May 24, 2007, 8:22pm UTC](https://community.mp3tag.de/t/aktion-zudieck-11-5-2007-achtung-2007-05-11/4923/2 "2007-05-24T20:22:46Z")

</div>

Hier eine Möglichkeit:

_Aktionstyp:_ **Ersetzen mit regulären Ausdrücken**  
_Feld:_ **TITLE**  
_Regulärer Ausdruck:_ **^.+?(\d{1,2}).(\d{1,2}).(\d{4}).+$**  
_Treffer ersetzen durch:_ **$3.$num($2,2).$num($1,2)**

[] Groß-/Kleinschreibung berücksichtigen

---

<div class="post-metadata">

### Author: ![juerrie](https://community.mp3tag.de/letter_avatar_proxy/v4/letter/j/85e7bf/32.png) [@juerrie](https://community.mp3tag.de/u/juerrie)
#### Post date: [May 25, 2007, 8:24am UTC](https://community.mp3tag.de/t/aktion-zudieck-11-5-2007-achtung-2007-05-11/4923/3 "2007-05-25T08:24:24Z")

</div>

Hallo Dano,

vielen Dank für Deine schnelle Hilfe! Hat prima geklappt!

Gibt es auch eine Möglichkeit, diese Lösung an Bedingungen zu knüpfen?

Beispiel hier:  
[#3]  
T=5 (TagFeld formatieren)  
F=ALBUM  
1=$if($eql($right(%artist%,7),Zudeick),Achtung Zudeick,%album%)

Nur wenn die ersten 7 Stellen von rechts in  
ARTIST = "Zudeick" dann  
ALBUM = "Achtung Zudeick" ansonsten  
ALBUM = unverändert

Also

Nur wenn die ersten 7 Stellen von rechts in  
ARTIST = "Zudeick" dann  
formatiere TITLE  
(gem. ^.+?(\d{1,2}).(\d{1,2}).(\d{4}).+$) ..  
von "Zudieck 11.5.2007 Achtung" = "2007.05.11"

Vielleicht auch über mehrere (ggf. scriptige) Aktionen?

Vielen Dank noch einmal  
Jue

In der Hoffnung, mit meinen nachfolgenden Fragen die Hilfsbereitschaft nicht über zu strapazieren ... (-:  
Ich möchte es halt gern verstehen.

Meine Fragen aus dem Folgenden vorweg genommen:

1. Die Zeichen '^' (Anfang eines String) und '$' (Ende eines String)  
Muß ein Ausdruck mit ^ beginnen und mit $ enden (ggf. nur in reg. Ausdrücken)?  
Also mit HTML-Befehlen wie 

2. Wofür wird das Fragezeichen in '.+?' benötigt?

Die Einzelteile Deines Ausdruckes mal durchgekaut:  
Regulärer Ausdruck: ^.+?(\d{1,2}).(\d{1,2}).(\d{4}).+$

^  
HILFETEXT: matched (verändert?) den Anfang eines Strings

Welche Bedeutung hat dieses Zeichen?

.+? = "Zudieck"  
HILFETEXT: "." matched (verändert) jedes Zeichen  
HILFETEXT: "+" einmal oder mehrfach  
HILFETEXT: "?" nullmal oder einmal

Mit . werden also alle Zeichen berücksichtigt/verändert.  
Mit + wird die Wiederholung bestimmt.  
Mit ? tja, hier verläßt es mich. Es wird doch nur ein Zeichen bestimmt, oder?

Das Einmal oder Mehrfach vom PlusZeichen ist bis zum nächsten Teilbereich gültig.  
Wofür braucht es das Fragezeichen?  
Der Leerschritt zwischen "Zudieck" und "11" wird durch den Punkt (alle Zeichen) eingeschlossen.

(\d{1,2}) = "11"  
HILFETEXT: "\d" alle Zahlen  
HILFETEXT: "{1,2}" {n,m} zw. n- und m-mal wiederholt  
HILFETEXT: "{n} mindestens n-Wiederholungen

{2} statt {1,2} geht nicht, weil auch Einstelliges berücksichtigt werden soll.

. = "."  
Das ist die Syntax für das 'Punkt'-Trennzeichen

(\d{1,2}) = "5"  
Hier haben wir die einstellige Variante von oben.

(\d{4}) = "2007"  
Hier wird davon ausgegangen, dass das Ziel immer 4stellig ist.  
Wenn das Ziel aber auch 2stellig "07" sein könnte, wäre (\d{2,4}) angebrachter.

.+ = "Achtung"  
Der Punkt = alle Zeichen  
Das Plus = bis zur nächsten Trennung, da aber Ende des FeldInhaltes, bis zum .mp3  
Warum hier kein Fragezeichen wie oben?

Vielen Dank  
Jue

---

<div class="post-metadata">

### Author: ![dano](https://community.mp3tag.de/user_avatar/community.mp3tag.de/dano/32/6_2.png) [@dano](https://community.mp3tag.de/u/dano)
#### Post date: [May 25, 2007, 6:07pm UTC](https://community.mp3tag.de/t/aktion-zudieck-11-5-2007-achtung-2007-05-11/4923/4 "2007-05-25T18:07:17Z")

</div>

> [@](#):
>
> Gibt es auch eine Möglichkeit, diese Lösung an Bedingungen zu knüpfen?

Wie die Bedingung geht hast du selber geschrieben. Jetzt muss man nur die $regexp() Funktion integrieren.  
$regexp(%title%,^.+?(\d{1,2}).(\d{1,2}).(\d{4}).+$,$3.$num($2,2).$num($1,2))  
Wobei hier $num() nicht funktioniert, muss man weglassen und mit einer weiteren Aktion die Nullen hinzufügen.

Falls in jedem Titel der so verändert werden soll "Zudieck" vorkommt, kann man den ja auch in den RA schreiben und braucht dann die Bedingung eigentlich nicht mehr.

1. 

^ ist ein Sonderzeichen das für den Zeilenanfang steht.  
Wenn ich ^a schreibe, heisst das es wird ein a gesucht das am Anfang der Zeile steht. Wenn ich nur a schreibe kann das a überall vorkommen.

1. 

Wenn ich hinter + das ? mache verändert das die Art wie + Treffer findet.  
.+ bedeutet "greedy" was heisst, das so viele Treffer wie möglich eingefangen werden.  
Das Problem ist, dass . für alle Zeichen steht .+ wird dann erstmal den kompletten Titel matchen, also es hört nicht bei der ersten Zahl wegen \d auf, sonder \d gehört ja auch zu . und wird somit mit gematched.  
Mit .+? wird das geändert und es wird nur so wenig wie möglich gematched, d.h. bei \d geht es dann auch mit dem Ausdruck weiter.

Für mehr Erklärungen gibts im Internet genug Sachen und Suchmaschinen die das für einen finden.

---

<div class="post-metadata">

### Author: ![juerrie](https://community.mp3tag.de/letter_avatar_proxy/v4/letter/j/85e7bf/32.png) [@juerrie](https://community.mp3tag.de/u/juerrie)
#### Post date: [May 27, 2007, 9:37am UTC](https://community.mp3tag.de/t/aktion-zudieck-11-5-2007-achtung-2007-05-11/4923/5 "2007-05-27T09:37:18Z")

</div>

Hallo Dano,

da hast Du mir sehr geholfen!

Vielen Dank
