Recherche par mot clé

Messages postés
10
Date d'inscription
mercredi 18 mai 2005
Statut
Membre
Dernière intervention
19 janvier 2010
- - Dernière réponse : Cirec
Messages postés
3809
Date d'inscription
vendredi 23 juillet 2004
Statut
Modérateur
Dernière intervention
1 septembre 2019
- 27 janv. 2006 à 19:06
Bonjour ;


J’ai une application de gestion de livres à laquelle je veux ajouter un menu de recherche de livres par mot clé. C'est-à-dire en saisissant un mot, tous les livres dont le titre contient le mot tapé, seront affichés dans un dbgrid..


A titre d’information j’ai essayé d’utiliser les deux fonctions suivantes :


AnsiContainsStr et AnsiContainsText mais en vain.


Prière de m’aider car j’ai vraiment besoin de cette recherche et merci d’avance à celui ou à celle qui m’apportera la solution.


Encore une fois merci .


Prière de m'avertir de votre réponse sur Email : yahia1b2003@yahoo.fr
Afficher la suite 

5 réponses

Messages postés
4200
Date d'inscription
samedi 16 octobre 2004
Statut
Modérateur
Dernière intervention
2 janvier 2019
26
0
Merci
le mieux serait d'utiliser une base de donnée, la requette serait plus simple :

SELECT * FROM base WHERE champ LIKE '%mot%mot%mot'

sinon faut regarder du coté des expression reguliere.

<hr size="2" width="100%">La theorie c'est quand on sait tout, mais que rien ne fonctionne.
La pratique c'est quand tout fonctionne, mais que personne ne sait pourquoi.
<hr>
Commenter la réponse de f0xi
Messages postés
4200
Date d'inscription
samedi 16 octobre 2004
Statut
Modérateur
Dernière intervention
2 janvier 2019
26
0
Merci
ps : ne mets pas ton mail dans tes messages.

<hr size="2" width="100%">La theorie c'est quand on sait tout, mais que rien ne fonctionne.
La pratique c'est quand tout fonctionne, mais que personne ne sait pourquoi.
<hr>
Commenter la réponse de f0xi
Messages postés
3809
Date d'inscription
vendredi 23 juillet 2004
Statut
Modérateur
Dernière intervention
1 septembre 2019
32
0
Merci
Salut,
si non tu peux utiliser la fonction Pos de l'unité system.pas :
function Pos(const substr, str: AnsiString): Integer;
qui revoie 0 si substr n'est pas trouvé
et qui revoie la position de substr dans str si elle a été trouvé

@+
Cirec
Commenter la réponse de Cirec
Messages postés
103
Date d'inscription
jeudi 16 septembre 2004
Statut
Membre
Dernière intervention
26 juillet 2007
0
Merci
Salut

Une remarque : la fonction Pos() fait la distinction entre les majuscules et minuscules, ce qui peut être génant pour une recherche par mot clé. Il faut alors forcer str et substr en majuscules pour que ça fonctionne.

Roud59
Commenter la réponse de roud59
Messages postés
3809
Date d'inscription
vendredi 23 juillet 2004
Statut
Modérateur
Dernière intervention
1 septembre 2019
32
0
Merci
@ roud59
oui absolument tu as raison de faire cette remarque:
Pos(UpperCase(SubStr), UpperCase(Str)) //pour forcer la Majuscule

Pos(LowerCase(SubStr), LowerCase(Str)) // pour forcer la Minuscule

@+
Cirec
Commenter la réponse de Cirec