Accueil > > > HIGHLIGHTING DE MOTS CLÉS TROUVÉS DANS UN TEXTE
HIGHLIGHTING DE MOTS CLÉS TROUVÉS DANS UN TEXTE
Information sur la source
Description
Ce code permet de créer un paragraphe à partir d'une recherche de mots clés dans un texte. Le paragraphe constitué a une taille que l'on peut définir et les mots clés qui y sont contenus sont surlignés.
Source
- ' remplace le mot clé dans le texte
- function ereg_replace(tx,rg,ch)
- set regEx = New RegExp
- regEx.IgnoreCase = True
- regEx.Global = True
- regEx.Pattern = rg
- ereg_replace = regEx.replace(tx,ch)
- end function
-
- ' fonction principale
- Function GetWrappingText(strSearchText, strKeywords, intLength)
- 'déclaration des variables
- Dim tmpText
- Dim tmpKeywords
- Dim intKeywordPos
- Dim intLimit
- Dim strBefore
- Dim strAfter
- tmpText= strSearchText
- tmpKeywords= strKeywords
- intLimit= intLength
-
-
- Dim aryKeywords
- aryKeywords = Split(tmpKeywords," ", 100) 'space delimiter
- 'test si il ya un mot clé dans le texte
- intKeywordPos = instr(lcase(tmpText),lcase(aryKeywords(0)))
-
- Dim intLength1
- If intKeywordPos <> 0 Then 'found a keyword
- 'extrait le texte situé avant le mot clé
- strBefore = Left(tmpText, intKeywordPos-1)
-
- If Len(strBefore) > intLimit Then
- intLength1 = Len(strBefore) - intLimit
- strBefore = Right(strBefore, intLimit)
-
- End If
- intLength1 = intKeywordPos + Len(aryKeywords(0)) '.ToString.Length
-
- Dim intLength2
- intLength2 = Len(tmpText)
- strAfter = Right(tmpText, Len(tmpText)-intLength1+1)
-
- If Len(strAfter) > intLimit Then
- intLength1 = Len(strAfter) - intLimit
- strAfter = Left(strAfter, intLimit)
-
- End If
- tmpText = strBefore & aryKeywords(0) & strAfter 'tostring
-
- Dim j
- 'Test chaque mot clé pour savoir si il est dans le texte
- j=0
- Do While j <= UBound(aryKeywords)
- If (Len(trim(aryKeywords(j))) > 0) Then 'tostring
- 'Remplacement du mot clé grâce à une expression régulière
- Dim input, replacement
- input = tmpText
- replacement= "<span style=""background-color: yellow;"">" + aryKeywords(j) & "</span>"
- tmpText = ereg_replace(input, aryKeywords(j), replacement)
- End If
- j = j + 1
- Loop
- tmpText = "..." & tmpText
- End If
- GetWrappingText= tmpText
- End Function
' remplace le mot clé dans le texte
function ereg_replace(tx,rg,ch)
set regEx = New RegExp
regEx.IgnoreCase = True
regEx.Global = True
regEx.Pattern = rg
ereg_replace = regEx.replace(tx,ch)
end function
' fonction principale
Function GetWrappingText(strSearchText, strKeywords, intLength)
'déclaration des variables
Dim tmpText
Dim tmpKeywords
Dim intKeywordPos
Dim intLimit
Dim strBefore
Dim strAfter
tmpText= strSearchText
tmpKeywords= strKeywords
intLimit= intLength
Dim aryKeywords
aryKeywords = Split(tmpKeywords," ", 100) 'space delimiter
'test si il ya un mot clé dans le texte
intKeywordPos = instr(lcase(tmpText),lcase(aryKeywords(0)))
Dim intLength1
If intKeywordPos <> 0 Then 'found a keyword
'extrait le texte situé avant le mot clé
strBefore = Left(tmpText, intKeywordPos-1)
If Len(strBefore) > intLimit Then
intLength1 = Len(strBefore) - intLimit
strBefore = Right(strBefore, intLimit)
End If
intLength1 = intKeywordPos + Len(aryKeywords(0)) '.ToString.Length
Dim intLength2
intLength2 = Len(tmpText)
strAfter = Right(tmpText, Len(tmpText)-intLength1+1)
If Len(strAfter) > intLimit Then
intLength1 = Len(strAfter) - intLimit
strAfter = Left(strAfter, intLimit)
End If
tmpText = strBefore & aryKeywords(0) & strAfter 'tostring
Dim j
'Test chaque mot clé pour savoir si il est dans le texte
j=0
Do While j <= UBound(aryKeywords)
If (Len(trim(aryKeywords(j))) > 0) Then 'tostring
'Remplacement du mot clé grâce à une expression régulière
Dim input, replacement
input = tmpText
replacement= "<span style=""background-color: yellow;"">" + aryKeywords(j) & "</span>"
tmpText = ereg_replace(input, aryKeywords(j), replacement)
End If
j = j + 1
Loop
tmpText = "..." & tmpText
End If
GetWrappingText= tmpText
End Function
Conclusion
Le paragraphe constitué n'est pas forcément celui contenant le plus de mots clés, il est construit autour du premier mot clé trouvé dans le texte. Mais c'est une amélioration possible si des gens sont motivés!
Sources de la même categorie
Commentaires et avis
Discussions en rapport avec ce code source dans le forum
Problème de formattage de texte [ par Arken ]
Bonjourj'ai le code suivant :j'ai d'abord une variable contenant une chaine de caractère v = "manger" ET "boire"ensuite<INPUT type=text name=x valu
recherche présence adresse web ou email dans texte [ par jfm_ ]
Bonjour, Je dois vérifier dans ma page si le texte fourni dans un formulaire contient une ou des adresses de courriels et internet et dans ce cas, re
zone de texte de mot de passe personnalisé [ par mami17 ]
salut comment on peut faire une zone de texte pour le mot de passe pérsonnalisé c-a-d par exemple je veux quand l'utilisateur appuier sur la touche "E
Mot Clé - moteur de recherche - Meta Tags [ par scottmat ]
Bonjours à tous, Question qui va peut-être paraitre ridicule<
Parcourir un texte pour chercher un mot [ par roro59650 ]
Bonjour,Aujourd'hui, je cherche comment parcourir un texte afin de chercher un mot, pour pouvoir le remplacer. Je sais comment le remplacer, mais il f
trouver en VBA un mot qui se trouve de manière aléatoire dans un champs texte [ par zebulon72 ]
Bonjour, Je vais essayais d'être concis, je voudrais effectuer un contrôle après la saisie dans un champ formulaire . Je m'explique, après
Convertir du texte en HTML [ par mariusapo ]
Bonjour J'ai du texte formaté dans un fichier resource que je veux afficher dans une vue ,je ne sais pas comment m'y prendre Exemple (dans mon fichie
Ajouter Un Fichier Texte dans une base de données [ par nabil2388 ]
Salut!! j'ai créer un fichier txt comment récupérer les données de ce fichier et les afficher dans une list(asp), et ajouter le contenu de ce liste da
|
Derniers Blogs
IMAGINE CUP 2012, MAKE A SIGN EN FINALEIMAGINE CUP 2012, MAKE A SIGN EN FINALE par junarnoalg
Voilà qui est fait, la nouvelle est officielle ! L'équipe belge "Make a Sign" va au pays des kangourous défendre son projet dans la catégorie Software Design. http://www.imaginecup.com/CompetitionsContent/Competition/WorldwideFinalists.aspx V...
Cliquez pour lire la suite de l'article par junarnoalg KINECT 1.5 IS OUT !KINECT 1.5 IS OUT ! par Vko
La version 1.5 du Kinect For Microsoft vient tout juste de sortir ! Plein de nouveautés: Tracking de squelette en Near Mode Détection en position assise Détection faciale avec un SDK dédié Documentation et des guideline (enfin) Un out...
Cliquez pour lire la suite de l'article par Vko LES ACTUALITéS DE LA SEMAINE SUR C2I.FR (14 MAI - 20 MAI) LES ACTUALITéS DE LA SEMAINE SUR C2I.FR (14 MAI - 20 MAI) par richardc
Mise à jour des Web API du 14 Mai
Réservez dès maintenant votre journée du 20 juin pour le Windows Azure Dev Camp 2012 à Paris
Mise à jour de Team Foundation Service
MechCommander 2 sur Windows 8
Entity Framework 5 Release Candidate e...
Cliquez pour lire la suite de l'article par richardc REACTIVE EXTENSIONS : CONSOMMER DES SERVICES AVEC RX PARTIE 3, LES PIèGES à éVITERREACTIVE EXTENSIONS : CONSOMMER DES SERVICES AVEC RX PARTIE 3, LES PIèGES à éVITER par Groc
Une mauvaise utilisation de rx lors de l'écriture d'une couche d'accès à des services peut conduire à des cas embarassants avec des erreurs mal gérées, des appels qui ne partent lorsqu'ils le devraient, et même des résultats incorrects . le tout nuis...
Cliquez pour lire la suite de l'article par Groc SHAREPOINT BLOG SITE, PROBLèME D'ARCHIVESSHAREPOINT BLOG SITE, PROBLèME D'ARCHIVES par junarnoalg
Dernièrement, nous avons migré le site
myTIC
vers un nouveau serveur SharePoint 2010. Dans les contenus que nous vouloins récupérer, nous avions un certain nombre de blogs.
Nous avons utilisé les commandes Power...
Cliquez pour lire la suite de l'article par junarnoalg
Forum
GRIDVIEW CHECKBOXGRIDVIEW CHECKBOX par invent001
Cliquez pour lire la suite par invent001 OUTIL MYSQLOUTIL MYSQL par nobla
Cliquez pour lire la suite par nobla
Logiciels
sDEVIS-FACTURES vlPRO (8.1.0.3)SDEVIS-FACTURES VLPRO (8.1.0.3)sDEVIS-FACTURES vlPRO a été mis au point pour les particuliers, créateurs, entrepreneurs, artisa... Cliquez pour télécharger sDEVIS-FACTURES vlPRO 974 Application Server (12.2.4.6)974 APPLICATION SERVER (12.2.4.6)Développez de puissantes applications dans un environnement de 'cloud computing', clusterisé, séc... Cliquez pour télécharger 974 Application Server vPicture (1.4.2.1)VPICTURE (1.4.2.1)Avec vPicture, hébergez vos images facilement et rapidement.
vPicture est un utilitaire simple, ... Cliquez pour télécharger vPicture Easy-Planning (2.2.1.6)EASY-PLANNING (2.2.1.6)Easy-Planning permet de créer des plannings sous la représentation de diagrammes et est adapté au... Cliquez pour télécharger Easy-Planning COM-BACKUP (2.0)COM-BACKUP (2.0)
COM-BACKUP est un logiciel de sauvegarde qui permet de planifier les sauvegardes de vos dossiers ...
Cliquez pour télécharger COM-BACKUP
|