Trennzeichen beim Aufteilen von Zeichenfolgen in Python beibehalten
Beim Aufteilen von Zeichenfolgen in Python werden die Trennzeichen standardmäßig verworfen. Es gibt jedoch Situationen, in denen die Beibehaltung dieser Trennzeichen von Vorteil sein kann.
Stellen Sie sich das folgende Szenario vor, in dem Sie eine Zeichenfolge tokenisieren, einige Operationen daran ausführen und dann die ursprüngliche Zeichenfolge wiederherstellen möchten. Um dies zu erreichen, ist die Beibehaltung der Trennzeichen von entscheidender Bedeutung.
Lösung: Verwendung von einfangenden Gruppen
Die Python-Funktion re.split bietet eine Möglichkeit, Trennzeichen durch die Verwendung von einfangenden Klammern zu erfassen das Muster. So können Sie es machen:
import re string = 'foo/bar spam\neggs' pattern = '(\W)' # Capture non-word characters in parentheses result = re.split(pattern, string) print(result)
Dies erzeugt die folgende Ausgabe:
['foo', '/', 'bar', ' ', 'spam', '\n', 'eggs']
Wie Sie sehen können, wurden die Trennzeichen als separate Elemente in der resultierenden Liste beibehalten.
Das Erfassen von Gruppen verstehen
Der Schlüssel zu dieser Lösung liegt in der Verwendung Erfassen von Gruppen im regulären Ausdrucksmuster. Erfassungsgruppen werden mithilfe von Klammern definiert und ermöglichen Ihnen die Erfassung des übereinstimmenden Textes. In diesem Fall stimmt die Erfassungsgruppe (W) mit jedem Nicht-Wort-Zeichen überein und der übereinstimmende Text wird in die resultierende Liste aufgenommen.
Mit dieser Technik können Sie eine Zeichenfolge effektiv teilen und dabei die Trennzeichen beibehalten. Diese Funktion kann in verschiedenen Szenarien nützlich sein, z. B. bei der Tokenisierung von Text, der Bearbeitung von Zeichenfolgen und deren Rekonstruktion nach dem Anwenden von Änderungen.
Das obige ist der detaillierte Inhalt vonWie kann ich Trennzeichen beim Teilen von Zeichenfolgen in Python beibehalten?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!