¿Cómo puedo dividir una cadena utilizando String.split() sin tener espacios finales o finales ni valores vacíos?¿Cómo puedo dividir una cadena utilizando String.split() sin tener espacios finales o finales ni valores vacíos?
Digamos que tengo cadena como " [email protected] ; [email protected]; [email protected], [email protected] "
.
Solía dividirlo llamando al String.split("[;, ]+")
pero el inconveniente es que obtienes elementos de matriz vacíos que debes ignorar en un bucle adicional.
También probé String.split("\\s*[;,]+\\s*")
que no da los elementos vacíos, pero deja espacio que conduce en primer correo electrónico y finales espacio en el último correo electrónico de manera que resulta matriz se parece porque no hay comas o punto y coma junto a los correos electrónicos:
[0] = {[email protected]}" [email protected]"
[1] = {[email protected]}"[email protected]"
[2] = {[email protected]}"[email protected]"
[3] = {[email protected]}"[email protected] "
¿Es posible obtener una serie de correos electrónicos "limpios" usando solo expresiones regulares y Split (sin tener que llamar a String.trim())?
Gracias!
¿Por qué no hacer un String.trim() antes de agregar la cadena a la matriz? – siebz0r
Porque no estoy agregando cadenas a la matriz, 'String.split' sí. – expert
Correcto, mi mal ;-) – siebz0r