Les Snippets

Connexion

Compter le nombre de sous-chaîne

Niveau requis pour utiliser/comprendre cette source : 2 ( Initié )
Créé le 04/06/2007 16:39:13 et initié par coucou747 [Liste]
Date de mise à jour : 04/06/2007 17:14:47
Vue : 12652
Catégorie(s) : Chaîne de caractères
Langages dispo pour ce code :
- mySQL
- VB6, VBA
- PHP 3, PHP 4, PHP 5
- Javascript



Langage : mySQL
Date ajout : 04/06/2007
Posté par coucou747 [Liste]
CREATE FUNCTION substringcount( string1 TEXT, string2 TEXT ) RETURNS REAL
DETERMINISTIC RETURN (LENGTH(string1)-LENGTH(REPLACE(string1, string2, "")))/LENGTH(string2);

Remarque :
SELECT substringcount("ab abc", "ab");

si vous voulez, ca remplace la sous chaine par du vide, dans la chaine principale, et ca compte la difference du nombre de caracteres, avant et apres... en divisant le tout par la taille de la sous chaine, vous comptez le nombre de sous chaines remplaces
Langage : VB6 , VBA
Date ajout : 10/06/2007
Posté par mortalino [Liste]
Option Explicit

Public Function NbInStr(ByVal MyStart As Long, ByVal MyWord As String, ByVal MyString As String) As Long
    If MyStart < 1 Or LenB(MyWord) < 2 Or LenB(MyString) < 2 Then Exit Function
    
Dim i As Long, MyCounter As Long

    MyCounter = 0
    For i = MyStart * 2 - 1 To LenB(MyString) Step 2
        If MidB(MyString, i, LenB(MyWord)) = MyWord Then MyCounter = MyCounter + 1
    Next i
    
    NbInStr = MyCounter
End Function

Sub Exemple_Utilisation()
    Debug.Print NbInStr(1, "mot", "Compte le nombre de mot 'mot' dans cette chaine")
    ' retournera 2
End Sub 
Remarque :
Existe déjà ici :
http://www.codyx.org/snippet_compter-nombre-occurrence-chaine-dans-autre_158.aspx
Langage : PHP 3 , PHP 4 , PHP 5
Date ajout : 10/06/2007
Posté par coucou747 [Liste]
substr_count($grossechaine, $souschaine);
Langage : Javascript
Date ajout : 25/08/2007
Posté par Arto_8000 [Liste]
// Version avec la casse //
function substr_count (str, seek)
{
    return ((str.length - str.split(seek).join("").length) / seek.length);
}
// Exemples :
substr_count("aBBBB","ab"); // 0
substr_count("ab abcdef"); // 2
// Version sans la casse //
function substr_count (str, seek)
{
    return ((str.length - str.replace(new RegExp(seek,"gi"),"").length) / seek.length);
}
// Exemples :
substr_count("aBBBB","ab"); // 1
substr_count("ab abcdef"); // 2

Snippets en rapport avec : Compter, Replace, Substringcount, Sous, Chaines



Codes sources en rapport avec : Compter, Replace, Substringcount, Sous, Chaines

{PHP} COMPARAISON DE 2 CHAINES , ET RETOUR DU POURCENTAGE DE RESSEMBLANCE
bonjour cette fonction tres simple sert a comparer 2 chaines de caracteres, et de connaitre leur ...

{Visual Basic, VB6, VB.NET, VB 2005} ALTERNATIVE À LA FUNCTION VBA OU VB REPLACE (JUSQU'À 10 FOIS PLUS VITE, SANS API)
J'ai trouvé cette fonction dans le forum Bigsource. Comme je n'ai pas trouvé d'équivalent si rapide ...

{Delphi} TABLEAU DE BOUTONS DYNAMIQUES (AGENDA)
L'agenda par lui même n'a que très peu d'intérêt et ne constitue pas le but de cet envoi. Le thème ...

{Python} FONCTION COMPTER LE NOMBRE DE LIGNE
Bonjour, ma première fonction que je poste ... Pour les gros débutant (dont je fais parti) je pense ...

{Delphi} LIBRAIRIE DE FONCTIONS DE GESTION DE SOUS-CHAINES.
Quelques fois, on aimerai avoir une sorte de "structure" de plusieurs éléments variable en taille et...

{C / C++ / C++.NET} PARSEUR GÉNÉRAL
C'est un parseur général et simple qui permet de calculer une expression quelconque avec les opérate...

{Visual Basic, VB6, VB.NET, VB 2005} OPÉRATIONS SUR LES CHAINES DE CARACTÈRE OPTIMISÉES ET ÉTENDUES
Bonjour à tous, Voici un module regroupant un paquet de fonctions permettant des opérations sur l...

{Python} CONCATÉNER DES FICHIERS TEXTES
Permet de concaténer des fichiers de même type dans un fichier de sortie qui aura la même extension ...

{Delphi} NETTOYAGE AUTOMATIQUE DE NOMS DE FICHIERS
Comme le titre l'indique, il s'agit ici de nettoyer des noms de fichiers pour aller à l'essentiel .....

{C / C++ / C++.NET} SHORTCUTS SEARCH AND REPLACE
Shortcuts Search And Replace allows to do easy operations on shortcuts like: - Search for shortcu...