Compter le nb d'apparitions d'1 caractere ds une string

Résolu
gabule
Messages postés
50
Date d'inscription
mercredi 18 mai 2005
Statut
Membre
Dernière intervention
24 avril 2008
- 4 mai 2006 à 15:33
yannick_parchemal
Messages postés
31
Date d'inscription
jeudi 13 avril 2006
Statut
Membre
Dernière intervention
22 mai 2006
- 5 mai 2006 à 14:07
Bonjour.
Je dois compter le nombre de ; qui se trouvent ds une string et apres je dois mettre ce qu'il y a entre ces ; ds des string.
Comment puis je faire pour compter le nombre de ; ?

Merci

5 réponses

scaryman
Messages postés
492
Date d'inscription
vendredi 30 janvier 2004
Statut
Membre
Dernière intervention
16 mai 2007
12
4 mai 2006 à 16:12
Salut
Utilise la classe StringTokenizer qui sépare un String en plusieurs avec comme séparateur le(s) caractère(s) passé(s) en paramètre.
Plus qu'à faire une boucle et incrémenter un int à chaque sous-string trouvé.

Voila
A++
3
gabule
Messages postés
50
Date d'inscription
mercredi 18 mai 2005
Statut
Membre
Dernière intervention
24 avril 2008

5 mai 2006 à 10:52
Ex Code :

String chaine="azer,qsdfg,wxc,ghjj";
String chaine1=new String[4];
StringTokenizer tok=new StringTokenizer(chaine,",");
n=0;
while(tok.hasMoreTokens()){//repete la boucle tant que il y a une virgule
chaine1[n]=tok2.nextToken();//nexttoken extrait des sous-chaine
n++;
}
3
gabule
Messages postés
50
Date d'inscription
mercredi 18 mai 2005
Statut
Membre
Dernière intervention
24 avril 2008

5 mai 2006 à 10:46
Merci
0
yannick_parchemal
Messages postés
31
Date d'inscription
jeudi 13 avril 2006
Statut
Membre
Dernière intervention
22 mai 2006

5 mai 2006 à 13:39
Deux remarques sur la proposition précédente :) :
- si le nombre de chaines est > à 4, ca ne marche plus
- si plusieurs points-virgules se suivent, StringTokenizer fait comme s'il y en avait qu'un alors que sous entendu dans l'énoncé initial, ca doit correspondre à des chaines vides
De plus, dans le problème initial, on veut commencer par déterminer le nombre de points-virgules.

Donc :
1. Compter le nombre de points-virgules
2. On connait alors le nombre de chaines et on remplit un tableau de chaines avec.
On ne peut plus utiliser StringTokenizer, ca donne donc quelque chose d'un peu plus compliqué ... il faut utiliser les méthodes indexOf et substring de String.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
yannick_parchemal
Messages postés
31
Date d'inscription
jeudi 13 avril 2006
Statut
Membre
Dernière intervention
22 mai 2006

5 mai 2006 à 14:07
Deux remarques sur la proposition précédente :) :
- si le nombre de chaines est > à 4, ca ne marche plus
- si plusieurs points-virgules se suivent, StringTokenizer fait comme s'il y en avait qu'un alors que sous entendu dans l'énoncé initial, ca doit correspondre à des chaines vides
De plus, dans le problème initial, on veut commencer par déterminer le nombre de points-virgules.

Donc :
1. Compter le nombre de points-virgules
2. On connait alors le nombre de chaines et on remplit un tableau de chaines avec.
On ne peut plus utiliser StringTokenizer, ca donne donc quelque chose d'un peu plus compliqué ... il faut utiliser les méthodes indexOf et substring de String.
0