2009-02-13 3 views

risposta

14

destro da the documentation:

>>> def dashrepl(matchobj): 
...  if matchobj.group(0) == '-': return ' ' 
...  else: return '-' 
>>> re.sub('-{1,2}', dashrepl, 'pro----gram-files') 
'pro--gram files' 
+0

Dannazione, ho appena pensato che potesse essere una stringa in quella funzione – esiegel

0

Python-agnostic: Trova tutto prima e tutto dopo il testo da sostituire.

/^(.*?)(your regexp to match)(.*)$/ 

Quindi avete il prossimo prima e dopo il testo che andrete a sostituire. Il resto è semplice: basta inserire il risultato della tua funzione tra le due stringhe.

+0

L'OP diceva "per ogni partita", quindi hai descritto solo la metà dell'algoritmo. In ogni caso, la risposta appropriata è stata data e scelta. – tzot