Heim >Backend-Entwicklung >Python-Tutorial >Wann sollten Sie das Präfix \'r\' in regulären Python-Ausdrücken verwenden?

Wann sollten Sie das Präfix \'r\' in regulären Python-Ausdrücken verwenden?

Susan Sarandon
Susan SarandonOriginal
2024-10-19 17:07:02454Durchsuche

When Should You Use the 'r' Prefix in Python Regular Expressions?

Python-Regex – r-Präfix

Pythons Modul für reguläre Ausdrücke unterstützt das Präfix r, das die folgende Zeichenfolge angibt sollte als Rohzeichenfolge behandelt werden. Dies ist besonders nützlich, wenn Sie mit Escape-Sequenzen arbeiten, da das Präfix r verhindert, dass Python das Backslash-Zeichen als Escape-Zeichen interpretiert.

Das Präfix r hingegen schon nicht immer notwendig. Beispielsweise werden Escape-Sequenzen, die in Python nicht gültig sind, auch dann als Escape-Sequenzen interpretiert, wenn das Präfix r nicht verwendet wird. Zum Beispiel im ersten Beispiel:

import re
print (re.sub('\s+', ' ', 'hello     there      there'))

Das reguläre Ausdrucksmuster „s“ stimmt mit einem oder mehreren Leerzeichen überein. Das Präfix r ist in diesem Fall nicht erforderlich, da das Backslash-Zeichen nicht als Escape-Zeichen verwendet wird (es definiert lediglich den Bereich der zu vergleichenden Zeichen).

Das r ist erforderlich, wenn in Python gültige Escape-Sequenzen verwendet werden. Zum Beispiel im zweiten Beispiel:

import re
print (re.sub(r'(\b\w+)(\s+\b)+', r'', 'hello     there      there'))
Das reguläre Ausdrucksmuster r'(bw )(s 1b) ' stimmt mit einem Wort überein, das mindestens einmal mit Leerzeichen dazwischen wiederholt wird. Das Präfix

r ist in diesem Fall erforderlich, da das Backslash-Zeichen als Escape-Zeichen verwendet wird, um die Grenzen des Wortes zu definieren.

Schließlich das Präfix

r ist nicht immer erforderlich, wenn eine Rohzeichenfolge verwendet wird. Das dritte Beispiel entspricht beispielsweise dem zweiten Beispiel:

import re
print (re.sub('(\b\w+)(\s+\b)+', '', 'hello     there      there'))
In diesem Fall wird das Präfix

r nicht verwendet, aber das reguläre Ausdrucksmuster wird weiterhin als a behandelt rohe Saite. Dies liegt daran, dass das gesamte String-Literal in einfache Anführungszeichen gesetzt ist, was in Python einen Rohstring kennzeichnet.

Zusammenfassend lässt sich sagen, dass das Präfix

r nicht immer notwendig ist, aber bei der Verwendung empfohlen wird Escape-Sequenzen, die in Python gültig sind.

Das obige ist der detaillierte Inhalt vonWann sollten Sie das Präfix \'r\' in regulären Python-Ausdrücken verwenden?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn