Foros del Web » Programando para Internet » Javascript »

contar los caracteres de una cadena

Estas en el tema de contar los caracteres de una cadena en el foro de Javascript en Foros del Web. Como podria contar los caracteres de una cadena sin tener en cuenta los espacios es decir por ejeplo la palabra cosa con el metodo length ...
  #1 (permalink)  
Antiguo 04/06/2014, 04:21
 
Fecha de Ingreso: enero-2011
Mensajes: 1.150
Antigüedad: 13 años, 10 meses
Puntos: 10
contar los caracteres de una cadena

Como podria contar los caracteres de una cadena sin tener en cuenta los espacios es decir por ejeplo la palabra cosa con el metodo length me saldria 4 pero si cosa esta escrito asin co sa me cuenta 5 y esto es lo que quiero evitar que me cuente espacios en blanco. Probe con trim() o con replace para cambiar espacios eliminar espacios en blanco pero el contador de caracter aumenta. Como podria hacerlo.
saludos.
  #2 (permalink)  
Antiguo 04/06/2014, 05:04
Avatar de Italico76  
Fecha de Ingreso: abril-2007
Mensajes: 3.303
Antigüedad: 17 años, 7 meses
Puntos: 292
Respuesta: contar los caracteres de una cadena

Código Javascript:
Ver original
  1. <script language="JavaScript">
  2.         var s ='el dia que me quieras'; // 21 caracteres, 4 espacios
  3.         var count = s.length;
  4.        
  5.         var espacios = 0;
  6.         for (var i = 0; i < count; i++)
  7.             if (s.charAt(i)==' ')
  8.                 espacios++;
  9.                
  10.         console.log(count-espacios);    // 17  
  11.     </script>
__________________
Salu2!
  #3 (permalink)  
Antiguo 04/06/2014, 09:04
Colaborador
 
Fecha de Ingreso: septiembre-2013
Ubicación: España
Mensajes: 3.648
Antigüedad: 11 años, 2 meses
Puntos: 578
Respuesta: contar los caracteres de una cadena

Prueba así:

Código Javascript:
Ver original
  1. var str = 'Una cosa';
  2.  
  3. alert(str.replace(/\s+/g, '').length);

DEMO

Última edición por PHPeros; 04/06/2014 a las 10:05 Razón: Agregar modificador global (g).

Etiquetas: cadena, caracteres
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 18:36.