[ksh] comper les points virgules

Résolu
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.
^^
Configuration: Windows XP
Firefox 3.0.1

9 réponses

  1. Merci jpicy cela fonctionne et merci dubcek pour ton aide et tes explications
    1. Modérateur
      Re-
      echo "1;JOBi;JUJU;5222;14875;Malicorne;" | sed 's/[^;]/ /g' | wc -w
      ;-))
      1. Contributeur
        wc -c comptant le nombre de caractères, il doit compter le saut de ligne
        1. Cela me donne 7 mais c'est déjà super car je vais pouvoir l'adapter dans mon code.
          Merci à vous.
          ^^
          1. Contributeur
            essaye
            echo "1;JOBi;JUJU;5222;14875;Malicorne;" | sed -e "s/[^;]//g" | wc -c
            1. Vous n'avez pas d'idées sur ce qui cause cette erreur?
              1. 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
                

                ^^
                1. Modérateur
                  Salut,
                  $ echo "1;JOBi;JUJU;5222;14875;Malicorne;" | grep -o ";" | wc -l
                  6
                  ;-))
                  1. Bonjour,

                    tu souhaiterais utiliser quel langages pour resoudre ton probleme? une regxp en java serais assez simple sinon
                    1. En Ksh
                      ^^