Questa è una di quelle cose in cui sono sicuro che mi manca qualcosa di semplice, ma ... Nel seguente programma di esempio, sto cercando di usare la libreria RE di Python per analizzare la stringa " linea "per ottenere il numero a virgola mobile appena prima del segno di percentuale, ovvero" 90,31 ". Ma il codice stampa sempre "nessuna corrispondenza".Espressione regolare Python non corrispondente
Ho provato anche un altro paio di espressioni regolari, tutte con lo stesso risultato. Cosa mi manca?
#!/usr/bin/python
import re
line = ' 0 repaired, 90.31% done'
pct_re = re.compile(' (\d+\.\d+)% done$')
#pct_re = re.compile(', (.+)% done$')
#pct_re = re.compile(' (\d+.*)% done$')
match = pct_re.match(line)
if match: print 'got match, pct=' + match.group(1)
else: print 'no match'
Sapevo che era qualcosa di banale! Grazie a tutti per le risposte veloci e utili. – Matt