Frage RegEx MuT: Lösche alle Zeichen ab "_"

German support forum

Moderators: white, Hacker, Stefan2

Post Reply
Dennis_Stevens
Senior Member
Senior Member
Posts: 215
Joined: 2013-06-08, 16:16 UTC
Location: NRW, Germany

Frage RegEx MuT: Lösche alle Zeichen ab "_"

Post by *Dennis_Stevens »

Moin!

Ich krieg es nicht hin. Wenn man bei Amazon MP3 herunterlädt, dann wird dem Songtitel im Dateinamen immer eine Signatur angehangen, die für mich total unnötig ist. Diese beginnt immer mit "_". Wie bekomme ich nun also dem MUT mit Regex beigebracht dass er inkl "_" alle folgenden Zeichen löschen soll?

Grüße!

Dennis
#230412 Single User Licence
Commanding Win10 64bit totally with version 11
User avatar
Stefan2
Power Member
Power Member
Posts: 4153
Joined: 2007-09-13, 22:20 UTC
Location: Europa

Re: Frage RegEx MuT: Lösche alle Zeichen ab "_"

Post by *Stefan2 »

_.+



Wenn man bei Amazon_Signatur angehangen.MP3
Wenn man bei Amazon.MP3
S: _.+
E: <Clear>
[x]RegEx



 
User avatar
moguck007
Junior Member
Junior Member
Posts: 69
Joined: 2021-05-03, 19:16 UTC

Re: Frage RegEx MuT: Lösche alle Zeichen ab "_"

Post by *moguck007 »

Da stelle ich gleich mal eine Anschlussfrage:

Was muss ich eingeben, wenn der Name mehrere '_' enthält (willkürliches Beispiel: "Test_Name_128k_ID0815") und ich aber selektiv löschen möchte, z.b.
A) nur das letzte '_' incl. Nachfolgendem
oder
B) nur ab dem zweiten '_' incl. Nachfolgendem
Gruß
Moritz
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Windows 10 Pro N, immer aktuell - 64Bit - 16GB RAM - für Homeanwendungen optimiert.
Motto: Das Bessere ist des Guten Feind.
TC-Anwender seit 2005.
User avatar
Stefan2
Power Member
Power Member
Posts: 4153
Joined: 2007-09-13, 22:20 UTC
Location: Europa

Re: Frage RegEx MuT: Lösche alle Zeichen ab "_"

Post by *Stefan2 »

Das kommt immer darauf an, mit welcher Engine, mit welchem Programm man das durchführen möchte. Beim TC geht es so:

A) selektiv löschen: nur das letzte '_' incl. Nachfolgendem
Test_Name_128k_ID0815.ext
Test_Name_128k.ext
Suche alles am Anfang greedy, und somit bis zum letzten Unterstrich, capture das Gewünschte in (),
und gib an, dass da noch mehr kommt. Ersetze mit dem in () gespeichertem.
S: (.+)_.+
E: $1
[x]RegEx


B) selektiv löschen: ab dem zweiten '_' incl. Nachfolgendem
Test_Name_128k_ID0815.ext
Test_Name.ext
Suche jeweils non-greedy alles bis zum zweitem Unterstrich, u.s.w.
S: (.+?_.+?)_.+
E: $1
[x]RegEx




Weil gerade Zeit ist, eine weitere Erklärung:
. >>> sucht ein beliebiges Zeichen.
+ >>> sucht ein-oder-mehrmaliges Vorkommen des vorherigen Zeichens (hier: der Punkt).
?_ >> RegEx-Anweisung "non-greedy" bis zum nächsten literalen Unterstrich.
Da der Unterstrich ja auch, "ein beliebiges Zeichen" ist, ist er in der Menge ".+" enthalten,
und wir sagen der Engine mit "non-greedy bis zum nächsten Unterstrich" eben genau was wir möchten (Alles, aber nur bis zum Unterstrich).


 
User avatar
moguck007
Junior Member
Junior Member
Posts: 69
Joined: 2021-05-03, 19:16 UTC

Re: Frage RegEx MuT: Lösche alle Zeichen ab "_"

Post by *moguck007 »

Danke für die Antworten, das erspart mir eine Menge Handarbeit.
Gruß
Moritz
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Windows 10 Pro N, immer aktuell - 64Bit - 16GB RAM - für Homeanwendungen optimiert.
Motto: Das Bessere ist des Guten Feind.
TC-Anwender seit 2005.
Dennis_Stevens
Senior Member
Senior Member
Posts: 215
Joined: 2013-06-08, 16:16 UTC
Location: NRW, Germany

Re: Frage RegEx MuT: Lösche alle Zeichen ab "_"

Post by *Dennis_Stevens »

Stefan2 wrote: 2021-12-11, 13:47 UTC _.+



Wenn man bei Amazon_Signatur angehangen.MP3
Wenn man bei Amazon.MP3
S: _.+
E: <Clear>
Hey Stefan2,

herzlichen Dank! Und sorry für die späte Antwort. Ich bin seither nicht dazu gekommen, das auszuprobieren!

Schöne Feiertage!

Grüße

Dennis
#230412 Single User Licence
Commanding Win10 64bit totally with version 11
Post Reply