Foros del Web » Programación para mayores de 30 ;) » .NET »

Buscando numero de veces que aparece un caracter en string

Estas en el tema de Buscando numero de veces que aparece un caracter en string en el foro de .NET en Foros del Web. Hola amigos de foros del web !! Saben soy nuevo en el mundo del .NET y me encontrado con un pequeno problemita el cual la ...
  #1 (permalink)  
Antiguo 20/02/2008, 09:24
 
Fecha de Ingreso: febrero-2008
Mensajes: 17
Antigüedad: 16 años, 2 meses
Puntos: 0
Pregunta Buscando numero de veces que aparece un caracter en string

Hola amigos de foros del web !!
Saben soy nuevo en el mundo del .NET y me encontrado con un pequeno problemita el cual la verdad he trado de solucionar pero me esta quitando el sueno.Les agradeceria mucho su comprension y ayuda gracias de ante mano.

La el pequeno problema es :

Tengo que contar cuantas veces aparece un caracter en un string .
Ejemplo 1 :
En el siguiente string : "13400" necesito saber cuantas veces aparece el numero "0" , en este caso la funcion que estoy buscando me tendria que devolver "2".

Ejemplo 2:
En el siguiente string : "11000" necesito saber cuantas veces aparece el numero "0" , en este caso la funcion que estoy buscando me tendria que devolver "3".



He encontrado una funcion que me verifica el string , pero me devuelve un valor booleano , y la verdad el valor booleano para lo que estoy trabajndo no me sirve.
Ahhh la funcion de string que he utilizado es name_val.Contains(0).
Pero repito esta me devuelve un valor booleano.
Gracias de ante mano
  #2 (permalink)  
Antiguo 20/02/2008, 09:35
Avatar de Peterpay
Colaborador
 
Fecha de Ingreso: septiembre-2007
Ubicación: San Francisco, United States
Mensajes: 3.858
Antigüedad: 16 años, 8 meses
Puntos: 87
Re: Buscando numero de veces que aparece un caracter en string

Pues es simple de implementar

public int TimesContained(string value,char lookingfor)
{
Dictionary<char,int> exists=new Dictionary<char,int>();
exists.Add(lookingfor,0);
foreach(char currentChar in value)
{
if( currentChar==lookingfor)
{
exists[lookingfor]++;
}
}
return exists[lookingfor];
}
  #3 (permalink)  
Antiguo 21/02/2008, 03:13
MK2
 
Fecha de Ingreso: enero-2007
Mensajes: 48
Antigüedad: 17 años, 3 meses
Puntos: 0
Re: Buscando numero de veces que aparece un caracter en string

Te paso una función hecha en VB parecida a la anterior (aunque quizá no tan elegante):

Private Function CuentaCaracter(ByVal cadena As String, ByVal caracter As Char)

Dim contador As Integer
contador = 0
For Each c As Char In cadena.ToCharArray
If c.ToString.Equals(caracter.ToString) Then
contador = contador + 1
End If
Next

Return contador

End Function

El funcionamiento es simple, le pasas una cadena y un carácter, conviertes la cadena en un array de caracteres y comparas caracter a caracter.

Saludos
  #4 (permalink)  
Antiguo 22/02/2008, 07:55
 
Fecha de Ingreso: febrero-2008
Mensajes: 17
Antigüedad: 16 años, 2 meses
Puntos: 0
Re: Buscando numero de veces que aparece un caracter en string

Graacias por responder la verdad las dos me ayudan mucho.
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 09:21.