¿Cómo eliminar espacios en una cadena? Por ejemplo:¿Cómo eliminar espacios de una cadena usando JavaScript?
de entrada: '/var/www/site/Brand new document.docx'
Salida: '/var/www/site/Brandnewdocument.docx'
Gracias
¿Cómo eliminar espacios en una cadena? Por ejemplo:¿Cómo eliminar espacios de una cadena usando JavaScript?
de entrada: '/var/www/site/Brand new document.docx'
Salida: '/var/www/site/Brandnewdocument.docx'
Gracias
Este?
str = str.replace(/\s/g, '');
Ejemplo
var str = '/var/www/site/Brand new document.docx';
document.write(str.replace(/\s/g, ''));
Actualización: Basado en this question, esto:
str = str.replace(/\s+/g, '');
es una mejor solución. Produce el mismo resultado, pero lo hace más rápido.
la expresión regular
\s
es la expresión regular para los "espacios en blanco", y g
es la bandera "global", lo que significa Que todas \s
(espacios en blanco).
Una gran explicación para +
se puede encontrar here.
Como nota al margen, podría reemplazar el contenido entre las comillas simples por cualquier cosa que desee, para poder reemplazar el espacio en blanco con cualquier otra cadena.
var a = "/var/www/site/Brand new document.docx";
alert(a.split(' ').join(''));
alert(a.replace(/\s/g, ""));
¡Dos formas de hacerlo!
Me gustó la división() y me uní a(). –
var input = '/var/www/site/Brand new document.docx';
//remove space
input = input.replace(/\s/g, '');
//make string lower
input = input.toLowerCase();
alert(input);
var output = '/var/www/site/Brand new document.docx'.replace(/ /g, "");
or
var output = '/var/www/site/Brand new document.docx'.replace(/ /gi,"");
Nota: Aunque se utiliza 'g' o 'gi' para la eliminación de espacios tanto se comporta de la misma.
Si usamos 'g' en la función de reemplazo, comprobará la coincidencia exacta. pero si usamos 'gi', ignora la sensibilidad de mayúsculas y minúsculas.
como referencia click here.
Siguiendo @rsplak respuesta: en realidad, el uso de la forma de división/unión es más rápido que el uso de expresiones regulares. Ver el rendimiento test case
Así
var result = text.split(' ').join('')
actúa más rápidamente que
var result = text.replace(/\s+/g, '')
En los textos pequeños esto no es relevante, pero para los casos en que el tiempo es importante, e.gramo. en los analizadores de texto, especialmente al interactuar con los usuarios, eso es importante.
Por otro lado, \s+
maneja más amplia variedad de espacios. Entre los \n
y \t
, también coincide con el carácter \u00a0
, y eso es lo que
se activa al obtener texto usando textDomNode.nodeValue
.
Así que creo que la conclusión de que aquí se puede hacer de la siguiente manera: si sólo se necesita reemplazar espacios' '
, utilizar split/join. Si puede haber diferentes símbolos de clase símbolo - utilizar replace(/\s+/g, '')
Usted podría tratar de usar esto:
input.split(' ').join('');
@Gaurav he admirado respuestas similares en el SO, y veo '.replace (/ \ s +/g, '') 'más a menudo. ¿Hay alguna diferencia entre eso y mi respuesta? –
en este caso, no hay diferencia. Pero + se usa para encontrar al menos una ocurrencia. – Gaurav
¡Funcionó impecablemente! Gracias – JLuiz