Dieser Artikel verwendet Python 2.7 zur Überprüfung.
Wenn Sie "re.sub ()" verwenden möchten, um reguläre Ausdrücke in Gruppen zu ersetzen, schreiben Sie es normalerweise so. (* Achten Sie darauf, "''" zweimal vor Gruppennummer 1 zu schreiben.)
python
re.sub(r'(hoge)', '\\1bar', 'hogefoo')
#Ergebnis:
# 'hogebarfoo'
Wenn Sie bei dieser Schreibmethode jedoch eine Zahl nach der Gruppennummer ** setzen möchten, wird der folgende Fehler angezeigt. ** ** **
python
# 'Dritte'Zu'Nummer 3'Möchte
re.sub(r'(Nein.)drei', '\\13', 'Nein.drei')
#Ergebnis:
# ...
# raise error, "invalid group reference"
# sre_constants.error: invalid group reference
Dies liegt daran, dass die Gruppennummer als 13 (im obigen Beispiel) anstelle von 1 erkannt wird.
In einem solchen Fall können Sie es wie folgt lösen.
python
re.sub(r'(Nein.)drei', '\g<1>3', 'Nein.drei')
#Ergebnis:
#Nummer 3