Il giorno 23 aprile 2013 12:08, Marco De Paoli <depao...@gmail.com> ha scritto:
> print(re.findall(r'file=([^ ,]*)',s)) > Sembra perfetta. Ci sono andato vicino con print(re.findall(r'file=(\S*)',s)) \S fa il match di qualsiasi cosa eccetto un spazio. L'asterico ripete per n volte, finchè non trova lo spazio bianco. Così facendo però include anche la parte con la virgola. Marco, saresti così gentile da spiegarmi la tua espressione regolare? Correggimi se sbaglio: le quadre dovrebbero servire per fare il match dei caratteri in essa contenuti, in questo caso 3 caratteri (inizio stringa ^, o uno spazio, o una virgola). Invece qua viene interpretato come "Da inizio stringa ^ fino ad uno spazio o una virgola. Mentre \S* mi è chiaro: un qualsiasi carattere che non sia spazio ripetuto n volte, l'asterisco dopo le quadre mi confende. Se lo tolgo vedo che fa il match solo del primo carattere ['/', '/']
_______________________________________________ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python