Il modulo definisce le seguenti funzioni e costanti, e un'eccezione:
| pattern[, flags]) |
Il comportamento dell'espressione può venire modificato
specificando un valore per il campo flags. I valori possono
essere uno delle seguenti variabili, combinate usando l'OR bit per
bit (l'operatore |).
La sequenza:
prog = re.compile(pat) result = prog.match(str)
è equivalente a
result = re.match(pat, str)
ma la versione che utilizza compile() è più efficiente quando l'espressione verrà usata più di una volta in un singolo programma.
| pattern, string[, flags]) |
None se nessuna posizione della stringa corrisponde al modello;
notate che questo è diverso dal trovare una corrispondenza di
lunghezza zero in qualche punto della stringa.
| pattern, string[, flags]) |
None se la stringa non corrisponde al modello; notate che
questo è differente rispetto ad una corrispondenza di lunghezza zero.
Note: Se volete localizzare una corrispondenza ovunque nella string, utilizzate search().
pattern, string[, maxsplit = 0]) |
>>> re.split('\W+', 'Parole, parole, parole.')
['Parole', 'parole', 'parole', '']
>>> re.split('(\W+)', 'Parole, parole, parole.')
['Parole', ', ', 'parole', ', ', 'parole', '.', '']
>>> re.split('\W+', 'Parole, parole, parole.', 1)
['Parole', 'parole, parole.']
Questa funzione combina ed estende le funzionalità delle vecchie regsub.split() e regsub.splitx().
| pattern, string) |
| pattern, string) |
| pattern, repl, string[, count]) |
>>> re.sub(r'def\s+([a-zA-Z_][a-zA-Z_0-9]*)\s*\(\s*\):',
... r'static PyObject*\npy_\1(void)\n{',
... 'def myfunc():')
'static PyObject*\npy_myfunc(void)\n{'
Se repl è una funzione, viene chiamata per ogni occorrenza (senza sovrapposizioni) del pattern. La funzione prende un singolo oggetto corrispondente come argomento, e restituisce la stringa sostitutiva. Per esempio:
>>> def dashrepl(matchobj):
.... if matchobj.group(0) == '-': return ' '
.... else: return '-'
>>> re.sub('-{1,2}', dashrepl, 'pro----gram-files')
'pro--gram files'
Il modello può essere una stringa o un oggetto RE; se necessitate di
specificare opzioni delle espressioni regolari, dovete usare un
oggetto RE o utilizzare i modificatori integrati nel modello; per
esempio
"sub("(?i)b+", "x", "bbbb BBBB")" returns 'x x'.
L'argomento facoltativo count indica il massimo numero di
occorrenze del modello che devono venire sostituite; count
deve essere un intero non negativo. Se omesso o zero, tutte le
occorrenze verranno sostituite. Le corrispondenze vuote per il
modello vengono sostituite solo quando non adiacenti ad una
corrispondenza precedente, così "sub('x*', '-', 'abc')"
restituisce '-a-b-c-'.
In aggiunta ai caratteri di escape e ai backreference come descritti sopra, "\g<name>" utilizzerà la sotto stringa che corrisposta dal gruppo chiamato "name", come definito dalla sintassi (?P<name>...). "\g<number>" utilizza il corrispondente numero del gruppo; "\g<2>" è quindi equivalente a "\2", ma non è ambiguo in una sostituzione come "\g<2>0". "\20" verrebbe interpretato come un riferimento al gruppo 20, non come un riferimento al gruppo 2 seguito dalla costante carattere "0". Il backreference "\g<0>" sostituisce l'intera sotto stringa che corrisponde all'espressione regolare.
| pattern, repl, string[, count]) |
(new_string, number_of_subst_made).
| string) |
Vedete Circa questo documento... per informazioni su modifiche e suggerimenti.