Python Language Sostituzione


Esempio

Le sostituzioni possono essere fatte su stringhe usando re.sub .

Sostituire le stringhe

re.sub(r"t[0-9][0-9]", "foo", "my name t13 is t44 what t99 ever t44")
# Out: 'my name foo is foo what foo ever foo'

Utilizzando riferimenti di gruppo

Sostituzioni con un numero limitato di gruppi possono essere effettuate come segue:

re.sub(r"t([0-9])([0-9])", r"t\2\1", "t13 t19 t81 t25")
# Out: 't31 t91 t18 t52'

Tuttavia, se si crea un ID di gruppo come "10", questo non funziona : \10 viene letto come 'ID numero 1 seguito da 0'. Quindi devi essere più specifico e usare la notazione \g<i> :

re.sub(r"t([0-9])([0-9])", r"t\g<2>\g<1>", "t13 t19 t81 t25")
# Out: 't31 t91 t18 t52'

Utilizzando una funzione di sostituzione

items = ["zero", "one", "two"]
re.sub(r"a\[([0-3])\]", lambda match: items[int(match.group(1))], "Items: a[0], a[1], something, a[2]")
# Out: 'Items: zero, one, something, two'