2013-05-09 17 views
5

Volevo solo controllare questo codice era valida per quello che sto cercando di fare (scheda (s) o spazi multipli sostituisce con uno spazio.Sostituire le schede o gli spazi multipli

preg_replace('/\t+|\s{2,}/', ' ', $street); 

Tuttavia ciò che se si trova un scheda E uno spazio insieme, quindi non dovremmo finire con due spazi allora? Lo spazio originale & quello nuovo il tab sostituito con.

Come posso cambiarlo in modo che tutti gli spazi nella stringa finiscano sempre solo essendo l'unico spazio?

+1

'\ s' è non solo uno spazio ma qualsiasi carattere di spazio bianco, inclusa la tabulazione. – Gumbo

+0

@gumbo ..... ahh vero, a volte mi dimentico di haha – Brett

risposta

8

Come \s corrisponderà entrambe le schede e gli spazi (così come altre forme di spazio bianco), questo si dovrebbe fare il trucco per sostituire qualsiasi quantità di consecutivi white-space con un unico spazio:

preg_replace('/\s+/', ' ', $street); 
Problemi correlati