# Filtern anpassen

**URL:** https://community.mp3tag.de/t/filtern-anpassen/13158
**Category:** Allgemein
**Created:** [February 28, 2012, 10:13pm UTC](https://community.mp3tag.de/t/filtern-anpassen/13158 "2012-02-28T22:13:21Z")
**Posts on this page:** 15
**Page:** 1

<div class="post-metadata">

### Author: ![Einherjer](https://community.mp3tag.de/letter_avatar_proxy/v4/letter/e/5daacb/32.png) [@Einherjer](https://community.mp3tag.de/u/Einherjer)
#### Post date: [February 28, 2012, 10:13pm UTC](https://community.mp3tag.de/t/filtern-anpassen/13158/1 "2012-02-28T22:13:21Z")

</div>

hallo members

könnte mir jmd helfen wie ich den filter einstellen muss um alle datein anzeigen zu lassen, die in einen ordner mit einem cd 1, disk1 usw im im namen des verzeichnis-ordners sind?

hab bisher noch nicht hinter die funktionsweise des filters blicken können.

und desweiteren wie folgende aktion aussehen würde.  
jeden inhalt einer ( ) und [] samt der klammern löschen.

hab diesbezüglich einige aktionen probiert, aber keine hat bisher funktioniert.

schonmal danke im voraus.

---

<div class="post-metadata">

### Author: ![pone](https://community.mp3tag.de/user_avatar/community.mp3tag.de/pone/32/272_2.png) [@pone](https://community.mp3tag.de/u/pone)
#### Post date: [February 28, 2012, 11:02pm UTC](https://community.mp3tag.de/t/filtern-anpassen/13158/2 "2012-02-28T23:02:34Z")

</div>

1:  
%\_directory% MATCHES (cd|disc|disk)

oder, wenn auch das Vorhandensein einer Zahl ein Kriterium ist:  
%\_directory% MATCHES (cd|disc|disk)\s\*\d+

2:  
Aktion: **Ersetzen mit regulärem Ausdruck**  
Feld: _musst du wissen_  
Regulärer Ausdruck: **\s\*((|[).+?()|])**  
Treffer ersetzen durch:

---

<div class="post-metadata">

### Author: ![anon40879270](https://community.mp3tag.de/letter_avatar_proxy/v4/letter/a/8797f3/32.png) [@anon40879270](https://community.mp3tag.de/u/anon40879270)
#### Post date: [February 29, 2012, 11:20am UTC](https://community.mp3tag.de/t/filtern-anpassen/13158/3 "2012-02-29T11:20:11Z")

</div>

Ich strebe eine einheitliche Schreibweise für cd|disc|disk an. Es soll stets so aussehen:  
, CD 1  
, CD 2  
usw.

Ich benutze $replace in 2 Schritten:  
1.  
$replace(%album%,cd 1,CD 1,cD 1,CD 1,Cd 1,CD 1,cd-1,CD 1,cD-1,CD 1,Cd-1,CD 1,CD-1,CD 1,cd1,CD 1,cD1,CD 1,Cd1,CD 1,CD1,CD 1,disk1,CD 1,Disk1,CD 1,disc1,CD 1,Disc1,CD 1,disk 1,CD 1,Disk 1,CD 1,disc 1,CD 1,Disc 1,CD 1)  
2.  
$replace(%album%, - CD 1 -,',' CD 1, CD 1,',' CD 1, (CD 1),',' CD 1, '['CD 1']',',' CD 1,)

... und das dann anschließen für CD 2 usw.  
Gibt es da elegantere Möglichkeiten?

---

<div class="post-metadata">

### Author: ![pone](https://community.mp3tag.de/user_avatar/community.mp3tag.de/pone/32/272_2.png) [@pone](https://community.mp3tag.de/u/pone)
#### Post date: [February 29, 2012, 12:30pm UTC](https://community.mp3tag.de/t/filtern-anpassen/13158/4 "2012-02-29T12:30:25Z")

</div>

> [@mbaa3](#):
>
> Gibt es da elegantere Möglichkeiten?

Das hier deckt alle von dir genannten Fälle ab:

$regexp(%album%,'(\s|-|[|(|,)_(cd|disc|disk)(\s|\W)_(\d+)(\s|\W)\*',', CD $4',1)

Ein Schritt und für beliebig viele CDs gleichzeitig.

---

<div class="post-metadata">

### Author: ![anon40879270](https://community.mp3tag.de/letter_avatar_proxy/v4/letter/a/8797f3/32.png) [@anon40879270](https://community.mp3tag.de/u/anon40879270)
#### Post date: [February 29, 2012, 1:14pm UTC](https://community.mp3tag.de/t/filtern-anpassen/13158/5 "2012-02-29T13:14:53Z")

</div>

> [@pone](#):
>
> Ein Schritt und für beliebig viele CDs gleichzeitig.

Perfekt! Danke für die schnelle Anwort. Wie müßte man es abändern, wenn "disk" in der Mitte steht?

Aus: Selected Works Disc 2, The Fast Lane  
wird: Selected Works, CD 2The Fast Lane

Es soll aber sein: Selected Works, CD 2, The Fast Lane

---

<div class="post-metadata">

### Author: ![pone](https://community.mp3tag.de/user_avatar/community.mp3tag.de/pone/32/272_2.png) [@pone](https://community.mp3tag.de/u/pone)
#### Post date: [February 29, 2012, 1:34pm UTC](https://community.mp3tag.de/t/filtern-anpassen/13158/6 "2012-02-29T13:34:11Z")

</div>

> [@mbaa3](#):
>
> Perfekt! Danke für die schnelle Anwort. Wie müßte man es abändern, wenn "disk" in der Mitte steht?
> 
> Aus: Selected Works Disc 2, The Fast Lane  
> wird: Selected Works, CD 2The Fast Lane
> 
> Es soll aber sein: Selected Works, CD 2, The Fast Lane

$regexp($regexp(%album%,'(\s|-|[|(|,)_(cd|disc|disk)(\s|\W)_(\d+)(\s|\W)_',', CD $4',1),(CD \d)(\s|\W)_(.+),'$1, $3')

Funktioniert für für beide Fälle, mit und ohne Zusatztitel nach CD x.

EDIT:  
nach **(CD** steht ein Leerzeichen. Das wird zumindest bei mir im Forum nicht angezeigt, weil dort der Zeilenumbruch ist. Bei Kopieren u Einfügen ist es aber noch da.

---

<div class="post-metadata">

### Author: ![anon40879270](https://community.mp3tag.de/letter_avatar_proxy/v4/letter/a/8797f3/32.png) [@anon40879270](https://community.mp3tag.de/u/anon40879270)
#### Post date: [February 29, 2012, 8:16pm UTC](https://community.mp3tag.de/t/filtern-anpassen/13158/7 "2012-02-29T20:16:03Z")

</div>

> [@pone](#):
>
> $regexp($regexp(%album%,'(\s|-|[|(|,)_(cd|disc|disk)(\s|\W)_(\d+)(\s|\W)_',', CD $4',1),(CD \d)(\s|\W)_(.+),'$1, $3')

Danke! Ist schon perfekt! Einmalig!

---

<div class="post-metadata">

### Author: ![anon40879270](https://community.mp3tag.de/letter_avatar_proxy/v4/letter/a/8797f3/32.png) [@anon40879270](https://community.mp3tag.de/u/anon40879270)
#### Post date: [July 27, 2012, 11:13pm UTC](https://community.mp3tag.de/t/filtern-anpassen/13158/8 "2012-07-27T23:13:01Z")

</div>

> [@mbaa3](#):
>
> Einmalig!

Wirklich! Ich benutze es immer wieder.

---

<div class="post-metadata">

### Author: ![anon40879270](https://community.mp3tag.de/letter_avatar_proxy/v4/letter/a/8797f3/32.png) [@anon40879270](https://community.mp3tag.de/u/anon40879270)
#### Post date: [November 5, 2014, 11:38am UTC](https://community.mp3tag.de/t/filtern-anpassen/13158/9 "2014-11-05T11:38:40Z")

</div>

> [@mbaa3](#):
>
> ... Ich benutze es immer wieder.

Ich habe die Aktion über meine umfangreiche Hörbuch-Sammlung laufen lassen und dabei übersehen, dass der Formatstring $regexp($regexp(%album%,'(\s|-|[|(|,)_(cd|disc|disk)(\s|\W)_(\d+)(\s|\W)_',', CD $4',1),(CD \d)(\s|\W)_(.+),'$1, $3')nur für einstellige CD-Zahlen geeignet ist. Leider sind in meiner Hörbuch-Sammlung auch viele zweistellige CD-Zahlen vorhanden. Dort ist es zu unsinnigen Formatierungen gekommen. Ein "undo" ist wegen der Menge schlecht möglich.

Beispiele für die Ergebnisse:  
Mord in Mesopotamien, CD 2, CD  
Elfenritter, Band 1 - Die Orden, CD 0, 2, CD  
Elfenritter, Band 2 - Die Alben, CD 0, 6, CD  
Cave Canem, CD 4, CD 4  
070, Schüsse aus dem Dunkel, CD   
Die Säulen Der Erde, CD 1, 1, CD 11/12

Ich muss mehr oder weniger "von Hand" an die Reparatur gehen. Filter wie  
$right(%album%,3) HAS "CD "  
die hilfreich sein könnten, funktionieren nicht. Vieles kann ich anhand der Pfadbezeichnung rekonstruieren.  
Ich brauche einen oder mehrere Formatstrings, um aus den obigen Beispielen wieder folgendes zu machen :

Mord in Mesopotamien, CD 2  
Elfenritter, Band 1 - Die Orden, CD 02  
Elfenritter, Band 2 - Die Alben, CD 06  
Cave Canem, CD 4  
070, Schüsse aus dem Dunkel  
Die Säulen Der Erde, CD 11

Ich sehe mich nicht in der Lage solche komplexen Formatstrings wie oben $regexp... zu entwickeln.

@ pone: Kannst du mir einige Tipps geben?

@ alle: Wie müsste ein Filter aussehen, der eine bestimmte Zeichenfolge am Ende erkennt? Z. B. CD?

* * *

**edit 2 Stunden später:**

Inzwischen habe ich festgestellt, dass der eigentliche Übertäter ein vergessenes Häckchen in einer anderen Aktion war. Formatieren:  
%album%, CD %discnumber%  
Damit sind alle Beispiele, außer denen mit "... CD 1, 1, " erklärt. Was bleibt, ist die Tatsache, dass der obige Formatstring $regexp... nur für einstellige CD-Zahlen geeignet ist.

---

<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: [November 6, 2014, 5:42pm UTC](https://community.mp3tag.de/t/filtern-anpassen/13158/10 "2014-11-06T17:42:01Z")

</div>

> [@mbaa3](#):
>
> ... $regexp($regexp(%album%,'(\s|-|[|(|,)_(cd|disc|disk)(\s|\W)_(\d+)(\s|\W)_',', CD $4',1),(CD \d)(\s|\W)_(.+),'$1, $3')...

vielleicht nützt es was, das (CD \d) durch (CD \d+) zu ersetzen.

---

<div class="post-metadata">

### Author: ![anon40879270](https://community.mp3tag.de/letter_avatar_proxy/v4/letter/a/8797f3/32.png) [@anon40879270](https://community.mp3tag.de/u/anon40879270)
#### Post date: [November 7, 2014, 5:49pm UTC](https://community.mp3tag.de/t/filtern-anpassen/13158/11 "2014-11-07T17:49:42Z")

</div>

> [@ohrenkino](#):
>
> vielleicht nützt es was, das (CD \d) durch (CD \d+) zu ersetzen.

Leider nein!

---

<div class="post-metadata">

### Author: ![anon40879270](https://community.mp3tag.de/letter_avatar_proxy/v4/letter/a/8797f3/32.png) [@anon40879270](https://community.mp3tag.de/u/anon40879270)
#### Post date: [August 4, 2015, 5:28pm UTC](https://community.mp3tag.de/t/filtern-anpassen/13158/12 "2015-08-04T17:28:44Z")

</div>

> [@pone](#):
>
> $regexp($regexp(%album%,'(\s|-|[|(|,)_(cd|disc|disk)(\s|\W)_(\d+)(\s|\W)_',', CD $4',1),(CD \d)(\s|\W)_(.+),'$1, $3')
> 
> Funktioniert für für beide Fälle, mit und ohne Zusatztitel nach CD x.
> 
> EDIT:  
> nach **(CD** steht ein Leerzeichen. Das wird zumindest bei mir im Forum nicht angezeigt, weil dort der Zeilenumbruch ist. Bei Kopieren u Einfügen ist es aber noch da.

Bei zweistelligen CD-Nummern funktioniert es nicht. Ich bin nicht in der Lage, dieses Script entsprechend zu erweitern. Wer kann mir helfen? Oder werden 2 Scrite gebraucht: eines für 1-stellige und ein anderes für 3-stellige Zahlen?

---

<div class="post-metadata">

### Author: ![anon40879270](https://community.mp3tag.de/letter_avatar_proxy/v4/letter/a/8797f3/32.png) [@anon40879270](https://community.mp3tag.de/u/anon40879270)
#### Post date: [August 4, 2015, 5:35pm UTC](https://community.mp3tag.de/t/filtern-anpassen/13158/13 "2015-08-04T17:35:26Z")

</div>

Bei zweistelligen CD-Nummern funktioniert es nicht. Ich bin nicht in der Lage, dieses Script entsprechend zu erweitern. Wer kann mir helfen? Oder werden 2 Scrite gebraucht: eines für 1-stellige und ein anderes für 3-stellige Zahlen?

---

<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: [August 4, 2015, 6:32pm UTC](https://community.mp3tag.de/t/filtern-anpassen/13158/14 "2015-08-04T18:32:43Z")

</div>

> [@mbaa3](#):
>
> Bei zweistelligen CD-Nummern funktioniert es nicht. Ich bin nicht in der Lage, dieses Script entsprechend zu erweitern. Wer kann mir helfen? ...

Es kommt mir so vor, als könnte das in deinem Sinn funktionieren ... also für den Normalfall, ...  
für die Rekonstruktion der vermurksten Namen muss man noch mal schauen ...

**ALBUM\_NEW \<== $regexp(%ALBUM%,'(\s|-|\[|\(|,)\*(cd|dis(c|k))(\s|\W)\*?(\d+)(\s|-|\]|\))\*(.\*)',', CD $5$7',1) ... or ... ALBUM\_NEW \<== $regexp(%ALBUM%,'(?:\s|-|\[|\(|,)\*(?:cd|dis(?:c|k))(?:\s|\W)\*?(\d+)(?:\s|-|\]|\))\*(.\*)',', CD $1$2',1)**

Testdateien ...  
[20150805.Test.mbaa3.CD.zip](https://community.mp3tag.de/uploads/default/original/2X/e/e2898475306f2670ed543b57296a8a3345433c9a.zip) (43.7 KB)  
DD.20150805.0954.CEST

[20150805.Test.mbaa3.CD.zip](https://community.mp3tag.de/uploads/default/original/2X/e/e2898475306f2670ed543b57296a8a3345433c9a.zip) (43.7 KB)

---

<div class="post-metadata">

### Author: ![anon40879270](https://community.mp3tag.de/letter_avatar_proxy/v4/letter/a/8797f3/32.png) [@anon40879270](https://community.mp3tag.de/u/anon40879270)
#### Post date: [August 6, 2015, 12:25pm UTC](https://community.mp3tag.de/t/filtern-anpassen/13158/15 "2015-08-06T12:25:30Z")

</div>

Danke, beide Varianten funktionieren.
