Wie kann ich Dateinamen mit Leerzeichen, Klammern usw. in eine Variable parsen? Bsp.Python/Bash - Get Dateinamen mit Escape-Zeichen
'Album Artist - Song name (feat Musician) [Year]'
zu
'Album\ Artist\ \- Song\ name\ \(feat\ Musician\)\ \[Year\]'
ich das richtige Format mit re.escape(filename)
. Wenn ich jedoch den Ausdruck von re.escape
in eine Variable speichere, wird die ursprüngliche Benennung umgekehrt. Ich weiß, dass ich die "string".replace('x', 'y')
Methode verwenden könnte. Aber es ist für mich nicht sicher.
Weiß jemand, wie ich das beheben oder dieses Problem umgehen kann? Verwenden von Python 3.5.3 btw. Beispielcode
EDIT:
>>> import re
>>> # this is an example array in the format how my filenames are named stored in files >>> files = ['AA - BB (CC) [DD]', 'EE - FF (GG) [HH]', 'II - JJ (KK) [LL]']
>>> for f in files:
... print(f)
...
AA - BB (CC) [DD]
EE - FF (GG) [HH]
II - JJ (KK) [LL]
>>> for f in files:
... print(re.escape(f))
...
AA\ \-\ BB\ \(CC\)\ \[DD\] # desired format
EE\ \-\ FF\ \(GG\)\ \[HH\]
II\ \-\ JJ\ \(KK\)\ \[LL\]
>>> escaped = re.escape(files[0])
>>> escaped
'AA\\ \\-\\ BB\\ \\(CC\\)\\ \\[DD\\]' # actual result
>>>
Könnten Sie den Code zeigen, wie Sie das tun? Ich kann Ihr Problem nicht replizieren – Mangohero1
@ Mangohero1 hat den Code in der Frage hinzugefügt. :) – valerius21
Was versuchst du mit dieser Zeichenfolge zu erreichen? – Galen