MUT RegEx Text zwischen zwei Zeichen entfernen

German support forum

Moderators: white, Hacker, Stefan2

Post Reply
Zarsten
Junior Member
Junior Member
Posts: 19
Joined: 2017-08-22, 14:19 UTC

MUT RegEx Text zwischen zwei Zeichen entfernen

Post by *Zarsten »

Moin zusammen,

ich habe die RegEx-Hilfe jetzt mehrere Stunden versucht umzusetzen. Es will mir nicht gelingen.

Es ist ein Ordner mit ca. 27.500 Aufnahme-Dateien von einer Dreambox vorhanden
Sie sind im folgenden Format abgelegt:
20190305 2140 - 3sat HD - Wer aufgibt ist tot.eit
20190305 2140 - 3sat HD - Wer aufgibt ist tot.ts
20190305 2140 - 3sat HD - Wer aufgibt ist tot.ts.ap
20190305 2140 - 3sat HD - Wer aufgibt ist tot.ts.cuts
20190305 2140 - 3sat HD - Wer aufgibt ist tot.ts.meta
20190305 2140 - 3sat HD - Wer aufgibt ist tot.ts.sc
20190213 2015 - Sky Atlantic HD - Room 104.eit
20190213 2015 - Sky Atlantic HD - Room 104.ts
20190213 2015 - Sky Atlantic HD - Room 104.ts.ap
20190213 2015 - Sky Atlantic HD - Room 104.ts.cuts
20190213 2015 - Sky Atlantic HD - Room 104.ts.meta
20190213 2015 - Sky Atlantic HD - Room 104.ts.sc
20190213 2045 - Sky Atlantic HD - Room 104.eit
20190213 2045 - Sky Atlantic HD - Room 104.ts
20190213 2045 - Sky Atlantic HD - Room 104.ts.ap
20190213 2045 - Sky Atlantic HD - Room 104.ts.cuts
20190213 2045 - Sky Atlantic HD - Room 104.ts.meta
20190213 2045 - Sky Atlantic HD - Room 104.ts.sc
20190218 1030 - Sky Cinema HD - Shape of Water - Das Flüstern des Wassers.eit
20190218 1030 - Sky Cinema HD - Shape of Water - Das Flüstern des Wassers.ts
20190218 1030 - Sky Cinema HD - Shape of Water - Das Flüstern des Wassers.ts.ap
20190218 1030 - Sky Cinema HD - Shape of Water - Das Flüstern des Wassers.ts.cuts
20190218 1030 - Sky Cinema HD - Shape of Water - Das Flüstern des Wassers.ts.meta
20190218 1030 - Sky Cinema HD - Shape of Water - Das Flüstern des Wassers.ts.sc

Mein Wunsch ist es den Senderteil zu entfernen dann Datum / Uhrzeit ans Ende zustellen (vor den ersten Punkt)
Mit:^(.{13}) habe ich Datum Uhrzeit separiert, danach verlassen Sie mich.
Kurz gesagt. Die ersten 13 Zeichen ans Ende stellen
Zwischen dem ersten und dem zweiten Bindestich inkl. der Bindestriche (Sender) löschen.
Da aber machmal 3 Bindestriche vorhanden sind will es nicht klappen.
Charmant wäre dann auch den Filmtitel als Ordner anzulegen inkl. verschieben der neu benannten Dateien.
^(.{13})(.+) - (.+) - (.+.) beachtet nicht, dass es im Filmtitel auch Bindestriche gibt.

Die DreamBox hat auf NAS gespeichert und die Filme sollen ohne Dreambox vom NAS abgespielt werden.
Die App nimmt immer die ertsen Zeichen der Datei, das mach das Stöbern sehr mühsam.

Ich habe im Foreum diverse RegEx Profis gesehen. Vieleicht hat einer Zeit und Lust sich der Sache anzunehmen.
Im vorraus schon mal vielen Dank.

Liebe Grüße
Zarsten
User avatar
Stefan2
Power Member
Power Member
Posts: 4175
Joined: 2007-09-13, 22:20 UTC
Location: Europa

Re: MUT RegEx Text zwischen zwei Zeichen entfernen

Post by *Stefan2 »

 

Analyse:
So wie deine Liste aussieht, kann man diese so aufteilen

"Datum - Sender - TitelMitBindestrich.ext"


Hier kann man die einzelnen Teile am Bindestrich "verankern":

(Datum) - (Sender) - (Titel - MitBindestrich).ext"

Suche: (.+?) - (.+?) - (.+)
Suche: (.+?) - als $1 , (.+?) - als $2 , (.+) als $3
Ersetze mit: $3 - $1 , lass das $2 ganz weg.

Hier wird das Fragezeichen verwendet, um "non-greedy" zu matchen, Lass mal das ? weg, um den Unterschied zu sehen.



TEST:
VON:
20190218 1030 - Sky Cinema HD - Shape of Water - Das Flüstern des Wassers.eit
20190213 2015 - Sky Atlantic HD - Room 104.eit

ZU:
Shape of Water - Das Flüstern des Wassers - 20190218 1030.eit
Room 104 - 20190213 2015.eit


USE:
Suche: (.+?) - (.+?) - (.+)
Ersetze: $3 - $1
[_]E
[x]RegEx



EDIT:
Stefan2 wrote: 2024-05-14, 17:29 UTC Ach so, du hast manchmal zwei Erweiterungen, habe ich übersehen, .... dann müssen wir das berücksichtigen:
Siehe weiter unten für mehr.....







 
Zarsten
Junior Member
Junior Member
Posts: 19
Joined: 2017-08-22, 14:19 UTC

Re: MUT RegEx Text zwischen zwei Zeichen entfernen

Post by *Zarsten »

Moin Stefan2,

vielen Dank für die schnelle Antwort.
Das funktioniert bei mir nur, wenn 3 Bindestriche im Dateinamen sind.
Mit und ohne ? sehe ich keinen Unterschied.
Würde gerne ein Bild anhängen, damit du evtl. sehen kannst was ich verkehrt mache.
Der Teil hinter dem dritten Bindestrich wird nicht mitgenommen.

https://www.dropbox.com/scl/fi/ybbbn1zcbrtegi74ugygd/Mut_RegEx_01.jpg?rlkey=c3vfmc01r097mlyj570p2ok7p&dl=0
Last edited by Zarsten on 2024-05-14, 16:08 UTC, edited 1 time in total.
User avatar
Stefan2
Power Member
Power Member
Posts: 4175
Joined: 2007-09-13, 22:20 UTC
Location: Europa

Re: MUT RegEx Text zwischen zwei Zeichen entfernen

Post by *Stefan2 »

Zarsten wrote: 2024-05-14, 15:37 UTC
Würde gerne ein Bild anhängen, damit du evtl. sehen kannst was ich verkehr mache.

?
Warum suchst du 4 ()-Gruppen?


Versuche es mal genau so wie gezeigt:

https://magentacloud.de/s/kcQknSxJmEGrbf7
Suche: (.+?) - (.+?) - (.+)
Ersetze: $3 - $1
[_]E
[x]RegEx








 
Zarsten
Junior Member
Junior Member
Posts: 19
Joined: 2017-08-22, 14:19 UTC

Re: MUT RegEx Text zwischen zwei Zeichen entfernen

Post by *Zarsten »

Hmmmm, Fehler vor der Tastatur?

https://www.dropbox.com/s/94x4hr7orqeu8xl/Screenshot%202024-05-14%2018.10.12.png?dl=0

Datum / Uhrzeit landet nicht immer vor dem ersten Punkt.

Danke füe die Hilfe
User avatar
Stefan2
Power Member
Power Member
Posts: 4175
Joined: 2007-09-13, 22:20 UTC
Location: Europa

Re: MUT RegEx Text zwischen zwei Zeichen entfernen

Post by *Stefan2 »

Ach so, du hast manchmal zwei Erweiterungen, habe ich übersehen, .... dann müssen wir das berücksichtigen:

VON:
20190213 2015 - Sky Atlantic HD - Room 104.eit
20190213 2015 - Sky Atlantic HD - Room 104.eit.xt
20190218 1030 - Sky Cinema HD - Shape of Water - Das Flüstern des Wassers.eit
20190218 1030 - Sky Cinema HD - Shape of Water - Das Flüstern des Wassers.eit.xt

ZU:
Room 104 - 20190213 2015.eit
Room 104 - 20190213 2015.eit.xt
Shape of Water - Das Flüstern des Wassers - 20190218 1030.eit
Shape of Water - Das Flüstern des Wassers - 20190218 1030.eit.xt


USE:
(.+?) - (.+?) - (.+?)(\..+)
$3 - $1$4
[x]E
[x]RegEx


Hier haben wir die Erweiterung in die Suche einbezogen.
Sollte funktionieren, solange du keinen Punkt im Namen selbst hast.





 
Zarsten
Junior Member
Junior Member
Posts: 19
Joined: 2017-08-22, 14:19 UTC

Re: MUT RegEx Text zwischen zwei Zeichen entfernen

Post by *Zarsten »

Das [x]E scheint zu helfen.
https://www.dropbox.com/s/ftd1mp1djrkubxt/Screenshot%202024-05-14%2019.39.11.png?dl=0
Ich werde das mal an Dummy-Dateien testen.
Zarsten
Junior Member
Junior Member
Posts: 19
Joined: 2017-08-22, 14:19 UTC

Re: MUT RegEx Text zwischen zwei Zeichen entfernen

Post by *Zarsten »

27300 Dateien in 15 Sekunden sinnvoll umbenannt.
Super. Herzlichen Dank.

Würde man so auch Ordner erstellen können?
\AllesbiszumMaximalzweitenUnterstrich\[N]

Werde ich mal ausprobieren. Nochmals Danke
User avatar
Stefan2
Power Member
Power Member
Posts: 4175
Joined: 2007-09-13, 22:20 UTC
Location: Europa

Re: MUT RegEx Text zwischen zwei Zeichen entfernen

Post by *Stefan2 »

Zarsten wrote: 2024-05-15, 03:38 UTC
Würde man so auch Ordner erstellen können?
\AllesbiszumMaximalzweitenUnterstrich\[N]


Mach mal dafür einen eigenen Thread mit einem passenden Titel (Subject) auf.

>>>>> MUT: Ordner mit Hilfe von RegEx erstellen
viewtopic.php?t=82503




 
Post Reply