Frage:
Wie kann ich Dateinamen bis zum letzten Vorkommen eines Zeichens auslesen?
Antwort:
Im ersten Fall treten folgende Dateinamen (ohne Erweiterung) auf, und der für die weitere Verarbeitung benötigte Text wird hervorgehoben.
0175-0001-01_03 und kdx-01_45-0001-05_02
Die normale Lösung für den ersten Fall wäre, eine Segmentierung durchzuführen und dann den ersten Treffer zu verarbeiten.
Im zweiten Fall funktioniert das nicht mehr. Die Segmentierung würde eine Liste mit 3 Elementen zurückgeben. Das erste Element enthält jedoch nicht den gesamten erforderlichen Text.
Die Lösung ist die Verwendung eines benutzerdefinierten Python-Makros
Wählen Sie anstelle der Segmentierung das benutzerdefinierte Makro und fügen Sie das folgende Skript ein:
idx = in_value.rfind("_")
return in_value[:idx]
Dieses Skript gibt den Wert vor dem letzten Auftreten von _ zurück.
Wenn Sie nur den Wert nach dem letzten Auftreten von _ verarbeiten möchten, verwenden Sie das folgende Skript:
idx = in_value.rfind("_")
return in_value[idx+1:]
Um nach einem anderen Trennzeichen zu suchen, ersetzen Sie den Unterstrich in der Zeile idx = in_value.rfind("_") durch das entsprechende alternative Zeichen.
Hinweis:
Wenn das Trennzeichen nicht gefunden wird, wird der vollständige Originalwert zurückgegeben.
Bitte beachten Sie: Dieser Artikel ist eine Übersetzung aus dem Englischen. Die in diesem Artikel enthaltenen Informationen basieren auf der/den englischsprachigen Originalversion(en) des Produkts. In der übersetzten Version unserer Artikel können kleinere Fehler enthalten sein, z.B. in der Grammatik. Wir können zwar nicht für die vollständige Richtigkeit der Übersetzung garantieren, aber in den meisten Fällen werden Sie sie als ausreichend informativ empfinden. Im Zweifelsfall wechseln Sie bitte zurück zur englischen Version dieses Artikels.