COMPTER COMBIEN DE FOIS IL Y A UNE CHAINE DANS UNE AUTRE

Signaler
Messages postés
13
Date d'inscription
lundi 17 février 2003
Statut
Membre
Dernière intervention
22 novembre 2007
-
Messages postés
3
Date d'inscription
mercredi 9 octobre 2002
Statut
Membre
Dernière intervention
10 décembre 2003
-
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/11823-compter-combien-de-fois-il-y-a-une-chaine-dans-une-autre

Messages postés
3
Date d'inscription
mercredi 9 octobre 2002
Statut
Membre
Dernière intervention
10 décembre 2003

Bonjour,

Le problème est qu'on est toujours obligé de parcourir l'intégralité de la chaine même s'il n'y a aucune occurrence de ce que l'on cherche...

function NbOccurrences(sousChaine : String; chaine : String): Integer;
var
rang, cpt : Integer;
begin
cpt := 0;
rang := Pos(sousChaine, chaine);
while rang <> 0 do
begin
cpt := cpt + 1;
chaine := Copy(chaine,
rang + Length(sousChaine),
Length(chaine) - (rang + Length(sousChaine) - 1));
rang := Pos(sousChaine, chaine);
end;
Result := cpt;
end;
Messages postés
13
Date d'inscription
lundi 17 février 2003
Statut
Membre
Dernière intervention
22 novembre 2007

calculer longueur string