[ksh] comper les points virgules

Résolu
JOBiJOBa2 Messages postés 91 Date d'inscription   Statut Membre Dernière intervention   -  
JOBiJOBa2 Messages postés 91 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour à tous,
comment est-ce que je peut compter le nombre de points virgules dans une chaine?

Exemple:

1;JOBi;JUJU;5222;14875;Malicorne;

Résultat souhaité:</souligne>
6

Merci d'avance.
^^

9 réponses

varfendell Messages postés 3259 Date d'inscription   Statut Membre Dernière intervention   707
 
Bonjour,

tu souhaiterais utiliser quel langages pour resoudre ton probleme? une regxp en java serais assez simple sinon
0
JOBiJOBa2 Messages postés 91 Date d'inscription   Statut Membre Dernière intervention   5
 
En Ksh
^^
0
jipicy Messages postés 40842 Date d'inscription   Statut Modérateur Dernière intervention   4 896
 
Salut,
$ echo "1;JOBi;JUJU;5222;14875;Malicorne;" | grep -o ";" | wc -l
6
;-))
0
JOBiJOBa2 Messages postés 91 Date d'inscription   Statut Membre Dernière intervention   5
 
J'ai recopié exactement ta réponse et il me donne :
grep: illegal option -- o
usage: grep [-E|-F] [-c|-l|-q] [-bhinsvx] -e pattern_list...
        [-f pattern_file...] [file...]
usage: grep [-E|-F] [-c|-l|-q] [-bhinsvx] [-e pattern_list...]
        -f pattern_file... [file...]
usage: grep [-E|-F] [-c|-l|-q] [-bhinsvx] pattern [file...]
0

^^
0
JOBiJOBa2 Messages postés 91 Date d'inscription   Statut Membre Dernière intervention   5
 
Vous n'avez pas d'idées sur ce qui cause cette erreur?
0

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

Posez votre question
dubcek Messages postés 18789 Date d'inscription   Statut Contributeur Dernière intervention   5 637
 
essaye
echo "1;JOBi;JUJU;5222;14875;Malicorne;" | sed -e "s/[^;]//g" | wc -c
0
JOBiJOBa2 Messages postés 91 Date d'inscription   Statut Membre Dernière intervention   5
 
Cela me donne 7 mais c'est déjà super car je vais pouvoir l'adapter dans mon code.
Merci à vous.
^^
0
dubcek Messages postés 18789 Date d'inscription   Statut Contributeur Dernière intervention   5 637
 
wc -c comptant le nombre de caractères, il doit compter le saut de ligne
0
jipicy Messages postés 40842 Date d'inscription   Statut Modérateur Dernière intervention   4 896
 
Re-
echo "1;JOBi;JUJU;5222;14875;Malicorne;" | sed 's/[^;]/ /g' | wc -w
;-))
0
JOBiJOBa2 Messages postés 91 Date d'inscription   Statut Membre Dernière intervention   5
 
Merci jpicy cela fonctionne et merci dubcek pour ton aide et tes explications
0