FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC

Développement d'applications avec le langage Panoramic
 
AccueilAccueil  FAQFAQ  RechercherRechercher  S'enregistrerS'enregistrer  MembresMembres  GroupesGroupes  Connexion  
Derniers sujets
» Planétarium virtuel.
par Pedro Alvarez Aujourd'hui à 16:57

» Roues dentées
par jean_debord Aujourd'hui à 10:40

» Attention arnaque !
par mindstorm Jeu 19 Juil 2018 - 19:18

» Qui fait quoi ?
par silverman Mer 18 Juil 2018 - 15:21

» ITEM_SELECT N,L pour synedit
par silverman Mer 18 Juil 2018 - 15:20

» Boussole
par jean_debord Mer 18 Juil 2018 - 11:06

» Roue à n faces
par Marc Dim 15 Juil 2018 - 22:16

» Exemple d'une nouvelle version d'un GRID
par Jean Claude Ven 13 Juil 2018 - 10:32

» Une simple question
par Oscaribout Sam 7 Juil 2018 - 23:20

» BUG sur l'objet TAB
par Jack Sam 7 Juil 2018 - 21:12

» Monopoly moderne
par jjn4 Sam 7 Juil 2018 - 15:06

» Récapitulatif ludothèque panoramic jjn4
par jjn4 Ven 6 Juil 2018 - 17:41

» Lignes ondulées
par JL35 Ven 6 Juil 2018 - 17:39

» bug off_activate 0 : sans d'effet
par silverman Ven 6 Juil 2018 - 13:02

» Position des objets d'un conteneur dans FBPano et Panoramic
par Navigateur Ven 6 Juil 2018 - 12:59

Navigation
 Portail
 Index
 Membres
 Profil
 FAQ
 Rechercher
Rechercher
 
 

Résultats par :
 
Rechercher Recherche avancée
Juillet 2018
LunMarMerJeuVenSamDim
      1
2345678
9101112131415
16171819202122
23242526272829
3031     
CalendrierCalendrier

Partagez | 
 

 Besoin d'une fonction de recherche ultra rapide.

Aller en bas 
AuteurMessage
Pedro Alvarez

avatar

Nombre de messages : 1104
Date d'inscription : 19/01/2014

MessageSujet: Besoin d'une fonction de recherche ultra rapide.   Ven 7 Avr 2017 - 10:45

Bonjour.

@Klaus.

J'aurais besoin d'une fonction de recherche ultra-rapide, permettant de rechercher les occurrences de multiples mots dans un fichier.

Je m'explique:

Une chaîne contenant, par exemple: 'le chat boit du lait.'

La fonction devrait rechercher l'ensemble des occurrences de chacun des mots de la chaîne, dans un fichier texte, et placer le résultat global dans une combo, list ou memo.

Le but étant de limiter à une seule fois l'appel à la fonction de recherche, et non d'appeler de multiples fois la fonction SearchStringInTextFile.

La chaîne de départ pouvant avoir une longueur bien plus grande.

Est-ce possible ?

Merci de la suite.
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Klaus

avatar

Nombre de messages : 11088
Age : 69
Localisation : Ile de France
Date d'inscription : 29/12/2009

MessageSujet: Re: Besoin d'une fonction de recherche ultra rapide.   Ven 7 Avr 2017 - 10:55

Certes. Pourquoi pas... Je vais regarder ce que cela implique.
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://klauspanoramic.comxa.com/index.html
Klaus

avatar

Nombre de messages : 11088
Age : 69
Localisation : Ile de France
Date d'inscription : 29/12/2009

MessageSujet: Re: Besoin d'une fonction de recherche ultra rapide.   Ven 7 Avr 2017 - 18:52

C'est fait ! Regarde la nouvelle version de KGF.dll. J'ai étendu les possibilités de la fonction SearchStringInTextFile.
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://klauspanoramic.comxa.com/index.html
Pedro Alvarez

avatar

Nombre de messages : 1104
Date d'inscription : 19/01/2014

MessageSujet: Besoin d'une fonction de recherche ultra rapide.   Ven 7 Avr 2017 - 20:28

Bonsoir.

Un grand merci Klaus, la nouvelle commande fonctionne à merveille.
Te serait-il possible d'ajouter une option permettant de ne pas afficher chacun des mots recherchés entre crochets, avant l'affichage de chacune des listes de résultats ?

Ceci afin d'éviter de réaliser un test sur chacune des lignes, afin d'éliminer celles-ci:

Exemple:

[chien]
chien assis;ms;buharda;fs;architecture
chien assis;ms;buhardilla;fs;
chien assis;ms;buhardilla;fs;architecture
chien basset;ms;basset;ms;
chien d'aveugle;ms;lazarillo;ms;
chien d'aveugle;ms;perro guía ou;ms; [très mauvais]
chien de berger;ms;perro ovejero;ms;Zoologie
chien de berger;ms;perro pastor;ms;Zoologie
chien de chasse/de garde;ms;perro de caza/guardián;ms; [très mauvais]


La ligne en rouge étant inutile.

Merci de la suite.
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Klaus

avatar

Nombre de messages : 11088
Age : 69
Localisation : Ile de France
Date d'inscription : 29/12/2009

MessageSujet: Re: Besoin d'une fonction de recherche ultra rapide.   Sam 8 Avr 2017 - 0:06

Télécharge la DLL à nouveau et essaie cette version du programme de démo. J'ai modifié comme suit:
Code:
OutType:  chercher le critère entier:         0=clipboard   1=Memo   2=Combo   3=List
          chercher tous les mots séparément: 10=clipboard  11=Memo  12=Combo  13=List   sans signaler mes mots
          chercher tous les mots séparément: 20=clipboard  21=Memo  22=Combo  23=List   en signalant les mots
Si ça convient comme ça, je ferai la mise à jour de la doc. Voici le programme de démo adapté:
Code:
' test_SearchStringInTextFile.bas

label exec

dim res%, fic$, crit$, ind%

full_space 0
dll_on "KGF.dll"
memo  1  : bar_both 1 : top 1,40 : width 1,300 : height 1,400
combo 2  : left 2,310 : top 2,40 : width 2,300 : height 2,400
list  3  : left 3,620 : top 3,40 : width 3,300 : height 3,400

option 10 : top 10,10 : left 10, 10 : caption 10,"Clipboard"
option 11 : top 11,10 : left 11,110 : caption 11,"Memo"
option 12 : top 12,10 : left 12,210 : caption 12,"Combo"
option 13 : top 13,10 : left 13,310 : caption 13,"List"
check 14 : top 14,10 : left 14,400 : caption 14,"Mots individuels"
check 15 : top 15,10 : left 15,500 : caption 15,"Signaler les mots"

alpha  20 : top 20,10 : left 20,610 : caption 20,"Critère:"
edit   21 : top 21,10 : left 21,680 : width 21,100
button 22 : top 22,10 : left 22,790 : caption 22,"Exécuter" : on_click 22,exec
mark_on 10

fic$ = "dico_français_espagnol.txt"
text 21,"travail"
end

exec:
  ind% = checked(14)*10
  if ind%>0 then ind% = ind% + checked(15)*10
  crit$ = text$(21)
  ' res% = dll_call4("SearchStringInTextFile",adr(fic$),adr(crit$),LineNumbers%, AtStartOnly%, OutType%, OutHandle%)
  '     LineNumbers: 0=pas de numéros de ligne  <>0=numéros de ligne
  '     AtStartOnly: 0=dans toute la ligne      <>0=au début de la ligne uniquement
  '     OutType%:    0=clipboard  1=memo  2=combo  3=list
  if checked(10)=1
    clear 1
    res% = dll_call6("SearchStringInTextFile",adr(fic$),adr(crit$),1,1,ind%+0,0)
    clipboard_paste 1
  end_if
  if checked(11)=1
    clear 1
    res% = dll_call6("SearchStringInTextFile",adr(fic$),adr(crit$),1,1,ind%+1,handle(1))
  end_if
  if checked(12)=1
    clear 2
    res% = dll_call6("SearchStringInTextFile",adr(fic$),adr(crit$),1,1,ind%+2,handle(2))
  end_if
  if checked(13)=1
    clear 3
    res% = dll_call6("SearchStringInTextFile",adr(fic$),adr(crit$),1,1,ind%+3,handle(3))
  end_if
  message str$(res%)+" lignes trouvées"
  return

end

Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://klauspanoramic.comxa.com/index.html
Pedro Alvarez

avatar

Nombre de messages : 1104
Date d'inscription : 19/01/2014

MessageSujet: Besoin d'une fonction de recherche ultra rapide.   Sam 8 Avr 2017 - 5:23

Bonjour.

Encore merci Klaus, cette fonction me convient très bien, et simplifie grandement mon code, grâce à un seul appel de dll.
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Contenu sponsorisé




MessageSujet: Re: Besoin d'une fonction de recherche ultra rapide.   

Revenir en haut Aller en bas
 
Besoin d'une fonction de recherche ultra rapide.
Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» G2R : Google Recherche Rapide
» [Résolu] Recherche d'un BON aspirateur de sites + formulaire informat
» recherche logiciel pour créer un site
» Serveur Proxy
» Ultra defrag : défragmenter vos disques durs

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC :: PANORAMIC :: A l'aide!-
Sauter vers: