2011-06-08 40 views
14

He una cadena CSV comoJava expresiones regulares reemplazar

"abc, java, stackoverflow ,  stack exchange , test" 

¿Puedo utilizar expresiones regulares para eliminar el espacio alrededor de las comas para obtener una cadena como

"abc,java,stackoverflow,stack exchange,test" 
+1

'¿Qué hay de una, "b, b", c'? –

+0

Desafortunadamente, "b, b" se tratará como dos valores diferentes, pero estoy de acuerdo con eso :) – Rnet

+0

está bien, entonces la solución de Chris será suficiente. –

Respuesta

29
str = str.replaceAll("\\s*,\\s*", ","); 
+2

¡Funciona! ¿Cómo? – Rnet

+4

@Rnet: '\ s' (que debe escribirse como' \\ s' en un literal de cadena Java) coincide con un carácter de espacio en blanco. '*' coincide con cero o más de la "cosa" anterior. Entonces, '\ s *' significa cero o más caracteres de espacio en blanco. Puedes descubrir el resto. ;-) –

+0

@Chris Jester-Young: Gracias :) – Rnet

Cuestiones relacionadas