COMPTER LES MOTS D' UN TEXTE

Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 - 6 sept. 2003 à 15:27
cs_Warning Messages postés 516 Date d'inscription samedi 3 février 2001 Statut Membre Dernière intervention 24 octobre 2006 - 11 sept. 2006 à 20:09
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/8471-compter-les-mots-d-un-texte

cs_Warning Messages postés 516 Date d'inscription samedi 3 février 2001 Statut Membre Dernière intervention 24 octobre 2006 2
11 sept. 2006 à 20:09
Je propose:

Public Function CountWord(Text As String, word As String) As Integer
CountWord = (Len(Text) - Len(Replace(Text, word, ""))) / Len(word)
End Function

:)
adilsmi2 Messages postés 1 Date d'inscription samedi 28 mai 2005 Statut Membre Dernière intervention 1 juin 2005
1 juin 2005 à 21:31
salut c adil du royaume du Maroc;en une phrase votre vos traveaux sont exellents et magnifiques ;)
cs_OphidiaN Messages postés 235 Date d'inscription mercredi 4 avril 2001 Statut Membre Dernière intervention 9 novembre 2007
6 sept. 2003 à 16:10
ah c vrai, ya le prob de la ponctuation.... :
jvais voir ça...
cs_OphidiaN Messages postés 235 Date d'inscription mercredi 4 avril 2001 Statut Membre Dernière intervention 9 novembre 2007
6 sept. 2003 à 15:53
hmmm c un peu barbare....

pour compter les mots ya un truc immediat et bcp plus simple ;)

NbreDeMots = (UBound(Split(Text1.Text, " ", , vbTextCompare)) +1)

c pas plus simple ça hein ?
Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 74
6 sept. 2003 à 15:31
et non, j'en etais sur, les backslaches ne s'affichent pas tous !! faut vraiment voir a changer ca !!

je refait un essai, en doublant les bslashes !

REG.Pattern = "[^\s""',.?!;€\$£?:%\+\-\*\/\\&#§<>\{\}\(\[\)\]]+"
Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 74
6 sept. 2003 à 15:27
on peut aussi faire ainsi :

• lier la reference 'Microsoft VbScript Regular Expression 5.5'

Private Sub Command1_Click()
Dim REG As New RegExp
Dim Matches As MatchCollection
REG.Global = True

REG.Pattern = "[^s""',.?!;€$£?:%+-*/\&#§<>{}([)]]+"

Set Matches = REG.Execute(Text1.Text)
MsgBox Matches.Count & " mots."
End Sub

--------------------
attention, ce code fonctionne chez moi, mais je ne sais pas si les Slashes et BackSlashes s'afficheront correctement sur vbfrance.....
Rejoignez-nous