PDA

View Full Version : [regex] sostituire spazi con underscore


DoctorT
24-06-2011, 14:17
salve sto cercando di creare una regex che sostituisca gli spazi all'interno di una stringa fra quote con un underscore

Esempio 'punto prelievo' -> 'punto_prelievo'

l'espressione per trovare la stringa funziona ed č '[A-Za-z]+ [A-Za-z]+'

che espressione devo usare per la sostituzione ?

wingman87
24-06-2011, 14:24
Dividi la regex da cui parti in gruppi con le parentesi tonde:
'([A-Za-z]+)( )([A-Za-z]+)'
e poi ti riferisci ai gruppi nella stringa di sostituzione con $numero_gruppo. L'unica cosa č che non mi ricordo come si numerano... :p Fai un po' di prove, ad esempio:
'$1_$3' oppure '$0_$2'

Comunque ho scritto molto di fretta, forse ho sbagliato la sintassi, cerca su internet "capturing groups regex" e dovresti trovare quello che ti serve.

Ciao e scusa, devo andare!

DoctorT
25-06-2011, 19:36
grazie Wingman!!
alla fine ha funzionato cosė:

stringa di ricerca -> '([A-Za-z]+) ([A-Za-z]+)'
stringa di sostituzione -> '\1_\2'