Foros del Web » Programando para Internet » PHP »

Contar numero de letras de cada palabra en una cadena

Estas en el tema de Contar numero de letras de cada palabra en una cadena en el foro de PHP en Foros del Web. Hola amigos, he buscado en internet y no encuentro mucha información sobre este tema, necesito hacer un sistema que cuente el numero de letras de ...
  #1 (permalink)  
Antiguo 15/03/2012, 08:52
 
Fecha de Ingreso: enero-2012
Ubicación: en la casa
Mensajes: 34
Antigüedad: 12 años, 9 meses
Puntos: 0
Contar numero de letras de cada palabra en una cadena

Hola amigos, he buscado en internet y no encuentro mucha información sobre este tema, necesito hacer un sistema que cuente el numero de letras de cada palabra en una cadena, por ejemplo si tengo esta cadena
Código PHP:
$cadena "El sol salio por la mañana"
debería mostrarme:
$a[0] = 2
$a[1] = 3
$a[2] = 5
$a[3] = 3
$a[4] = 2
$a[5] = 6

Lo único que encontré en Internet es como contra el numero de letras en una cadena y el numero de palabras en una cadena, pero nada como lo que necesito. Si alguien tiene alguna idea de como hacerlo, please help me!

Saludos.
  #2 (permalink)  
Antiguo 15/03/2012, 08:58
Avatar de maycolalvarez
Colaborador
 
Fecha de Ingreso: julio-2008
Ubicación: Caracas
Mensajes: 12.120
Antigüedad: 16 años, 3 meses
Puntos: 1532
Respuesta: Contar numero de letras de cada palabra en una cadena

yo que tú usaría explode para separar las palabras, lo que te las devuelve en un array y con ello lo recorro usando count() y listo!
__________________
¡Por favor!: usa el highlight para mostrar código
El que busca, encuentra...
  #3 (permalink)  
Antiguo 15/03/2012, 09:00
Avatar de h2swider  
Fecha de Ingreso: julio-2007
Ubicación: Ciudad de Buenos Aires
Mensajes: 932
Antigüedad: 17 años, 3 meses
Puntos: 194
Respuesta: Contar numero de letras de cada palabra en una cadena

Algo así te podría servir

Código PHP:
Ver original
  1. <?php
  2.  
  3. $cadena = "El sol salio por la mañana";  
  4.  
  5. $cadena = explode(' ', $cadena);
  6.  
  7. foreach($cadena as $key => $value){
  8.     $cadena[$key] = strlen($value);
  9. }
  10.  
  11. foreach($cadena as $value){
  12.     echo $cadena."<br />";
  13. }
  14.  
  15. ?>
__________________
Codifica siempre como si la persona que finalmente mantedra tu código sea un psicópata violento que sabe donde vives
  #4 (permalink)  
Antiguo 15/03/2012, 09:04
 
Fecha de Ingreso: enero-2012
Ubicación: en la casa
Mensajes: 34
Antigüedad: 12 años, 9 meses
Puntos: 0
Respuesta: Contar numero de letras de cada palabra en una cadena

k, gracias maycolalvarez y h2swider, muy buenos consejos, ya voy usarlos y les comento que tal me va.
  #5 (permalink)  
Antiguo 15/03/2012, 12:42
Avatar de andresdzphp
Colaborador
 
Fecha de Ingreso: julio-2011
Ubicación: $this->Colombia;
Mensajes: 2.749
Antigüedad: 13 años, 4 meses
Puntos: 793
Respuesta: Contar numero de letras de cada palabra en una cadena

Puedes hacer algo así:

Código PHP:
Ver original
  1. <?php
  2. $cadena = "El sol salio por la mañana";
  3. $res = array_map('strlen', explode(' ', $cadena));
  4.  
  5. echo '<pre>';
  6. print_r($res);
  7. echo '</pre>';

Cita:
Array
(
[0] => 2
[1] => 3
[2] => 5
[3] => 3
[4] => 2
[5] => 6
)
Saludos.
__________________
Si sabemos como leer e interpretar el manual será mucho más fácil aprender PHP. En lugar de confiar en ejemplos o copiar y pegar - PHP
  #6 (permalink)  
Antiguo 16/03/2012, 07:25
Avatar de h2swider  
Fecha de Ingreso: julio-2007
Ubicación: Ciudad de Buenos Aires
Mensajes: 932
Antigüedad: 17 años, 3 meses
Puntos: 194
Respuesta: Contar numero de letras de cada palabra en una cadena

Cita:
Iniciado por andresdzphp Ver Mensaje
Puedes hacer algo así:

Código PHP:
Ver original
  1. <?php
  2. $cadena = "El sol salio por la mañana";
  3. $res = array_map('strlen', explode(' ', $cadena));
  4.  
  5. echo '<pre>';
  6. print_r($res);
  7. echo '</pre>';

Saludos.
Definitivamente la solución de andres me gusto mas
__________________
Codifica siempre como si la persona que finalmente mantedra tu código sea un psicópata violento que sabe donde vives

Etiquetas: cada, letras, numero, palabra, cadenas
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:20.