Recherche de chaine caractères

JLB29P - 26 mars 2013 à 21:29
 JLB29P - 28 mars 2013 à 11:56
Bonjour,
Comment faire une recherche (comme avec un moteur de recherche sur le net)sur des fichiers ASCII mais aussi DOC, XLS, PDF, et au format de diverses autres applications (MSOffice et OpenOffice) à partir d'une application extérieure (à créer si c'est possible, car le contenu de ces fichiers est généralement codé).
J'ai fait faire par un ami programmeur un programme qui faisait presque cela avant qu'il n'existe des moteurs de recherche dans les années 90, mais seulement sur les fichiers ASCII.
Objectif:
Recherche de PLUSIEURS chaines de caractères (ET, OU) séparées de nnn caractères max (ou sur une même page, ou dans un même paragraphe, ou...) SAUF si telles autres chaines existent dans le même intervalle.
Présentation et fonctionnalités souhaitées: celles utilisées par "PDF-Viewer" (options avancées dont recherche dans des dossiers et sous dossiers) avec affichage des résultats et possibilité d'ouvrir les fichiers sélectionnés (à la page sélectionnée) en lançant les applications adéquates.

Ma question: existe-t-il déjà des utilitaires permettant de faire cela (pas utile de réinventer la roue) sauf à l'école.
Si oui, merci de me les indiquer (et quelques langages sont adaptés ?)

7 réponses

cptpingu Messages postés 3837 Date d'inscription dimanche 12 décembre 2004 Statut Modérateur Dernière intervention 28 mars 2023 123
27 mars 2013 à 00:49
Bonjour.

Si c'est une recherche sur le web, alors Google propose déjà ce genre de fonctionnalités (voir la syntaxe spéciale que l'on peut utiliser dans la barre de recherche).

Si c'est une recherche Windows, alors l'explorateur de base propose déjà ce genre de fonctionnalité (au moins pour du texte, en tout cas). Il y a, il me semble une case à cocher pour que la recherche se fasse aussi dans le fichier et pas seulement sur son nom. Mais pas sur que ça réponde à toute tes demandes :(

Si c'est une recherche sous un système de type Unix, alors tu as "grep" et "sed" qui font le café (peuvent tout faire).
sed et grep sont aussi utilisables sous Windows (mais c'est plus compliqué, il faut généralement installer cygwin, ce qui est peu pratique).

________________________________________________________________________
Historique de mes créations, et quelques articles:
[ http://0217021.free.fr/portfolio http://0217021.free.fr/portfolio]
Merci d'utiliser Réponse acceptée si un post répond à votre question
0
"l'explorateur de base propose déjà ce genre de fonctionnalité"
Merci de ta réponse, mais elle ne correspond pas à ce dont j'ai besoin.

Pour la phase
"l'explorateur de base propose déjà ce genre de fonctionnalité"
Sous Win, tu peux chercher "explorateur" puis dans une 2eme recherche "genre de fonctionnalité"
mais pas "explorateur" ET ("genre de fonctionnalité" OU "type de fonctionnalité") NAND Unix (le tout espacé de "2000 caractères" maxi)

Ou il existe une variété d'Explorateur que je ne connais pas (ou des fonctionnalités que je n'ai pas découvertes)

Pour sed et grep et cygwin, je vais me documenter.
Salut
0
BunoCS Messages postés 15476 Date d'inscription lundi 11 juillet 2005 Statut Modérateur Dernière intervention 3 mai 2024 103
27 mars 2013 à 14:07
Hello,
Notepad++ le fait très bien.
Regarde cette discussion


@+
Buno, Admin CS
L'urgent est fait, l'impossible est en cours. Pour les miracles, prévoir un délai...
0
Merci à nouveau, mais comme précédemment, la réponse est à côté de la question.
Si j'utilise tous les jours Notepad++, je n'en connais pas toutes les subtilités.
Après contrôle, je ne vois pas d'option de recherche avancée correspondant à celles que me seraient utiles; et Notepad ne trouve que quelques un des textes que j'ai cherchés dans des pdf doc et xls alors qu'ils sont présents en bien plus grande quantité ! (je précise: les pdf contienne du texte, pas des images)
Avec l'Explorateur de Windows ou Total Commander, c'est pire, les fichiers sont listés, mais les occurrences ne sont pas mises en évidences et pas du tout trouvées dans les PDF ! (jusqu'à Acrobat Reader 5 je crois, le texte était natif, à présent il est codé et plus trouvable sans utiliser un logiciel spécialisé).
Le mieux que j'obtienne pour un mot dans un xls, c'est 2 N° de lignes, alors que ce mot figure une cinquantaine de fois (et sur plusieurs feuilles).
Salut
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
BunoCS Messages postés 15476 Date d'inscription lundi 11 juillet 2005 Statut Modérateur Dernière intervention 3 mai 2024 103
28 mars 2013 à 11:34
Hello,
Tu n'as peut-être pas lu la discussion en entier.
Menu Recherche > Recherche dans les sous-dossiers.
Dans la fenêtre qui apparait, tu as la possibilité de renseigner:
- le répertoire de recherche
- le filtre sur les extensions de fichiers
- la recherche textuelle
- le type de recherche: textuel, étendu, avec expressions régulières


@+
Buno, Admin CS
L'urgent est fait, l'impossible est en cours. Pour les miracles, prévoir un délai...
0
BunoCS Messages postés 15476 Date d'inscription lundi 11 juillet 2005 Statut Modérateur Dernière intervention 3 mai 2024 103
28 mars 2013 à 11:35
Après, effectivement, si tu as besoin de filtres de recherche bien précis...il va falloir le coder..


@+
Buno, Admin CS
L'urgent est fait, l'impossible est en cours. Pour les miracles, prévoir un délai...
0
Je comprends mal ta réponse, car j'utilise la recherche avancée, mais aussi bien sur des fichiers PDF que DOC et XLS, ça ne renvoie que quelques occurrences, mais pas toutes et de très loin, le contenu de ces fichiers étant codé et non accessible à Notepad++ . Il reste quelques textes lisibles, mais très peu (un ou deux). Ils sont peut-être ensuite indexés en binaire ???
En outre, comme tu le remarques, ça ne répond pas à ce que je veux (plusieurs textes différents (ET OU) espacés de nnn et NAND tels autre textes. En gros, ce que propose la recherche avancée de GOOGLE mais avec la notion d'intervalle entre les textes.
Lorsque j'avais obtenu ce résultat sur des fichiers ASCII, ça me permettait de localiser un objet possédant certains attributs, à l'exclusion des autres objets de même type, dans des fichiers de CAO comportant des dizaines de milliers de lignes. Si j'obtenais trop de résultats il suffisait généralement de resserrer l'intervalle.
Mais il fallait le faire fichier par fichier et seulement en ASCII.
Je pensais naïvement que c'était aussi possible sur les fichiers PDF entre autres mais ce n'est plus le cas.
0
Rejoignez-nous