Compter les mots dans une chaine de caractère


Contenu du snippet

Encore un truc tout simple mais qui peut servir

Source / Exemple :


<html>
<head>
	<title>Comptage de mot :)</title>
</head>

<body>
<%

Function CombienDeMot(LeTexte)
	Dim LeTxtTmp
	Dim LeTxt

	'On vire tout ce qui n'est pas dans l'alphabet
	LeTxtTmp = Nettoyage(LeTexte)

	' Au cas ou il y aurait des double espace
	LeTxtTmp = Replace (LeTxtTmp, "  ", " ")

	'on considère qu'un espace sépare 2 mots
	' et on split les mots
	LeTxt = Split(LeTxtTmp, " ")
	
	CombienDeMot = Ubound(LeTxt) + 1
End Function

Function Nettoyage(source)
	Const Letters = "abcdefghijklmnopqrstuvwxyzéèùîçïëêàâäôö"
	Dim i, tmp

    tmp = ""
    For i = 1 To Len(source)
        If InStr(Letters, LCase(Mid(source, i, 1))) <> 0 Then
			tmp = tmp & Mid(source, i, 1)
		Else
			tmp = tmp & " "
        End If
    Next
    Nettoyage = tmp
End Function
%>
<%=CombienDeMot("C'est cool, y a plein de mot dans ma phrase:)test")%> mot(s)
</body>
</html>

Conclusion :


Faites un copier/coller dasn une page en .asp, exécutez et le tour est joué

A voir également