IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Algorithmes et structures de données Discussion :

recherche d'une phrase dans un texte


Sujet :

Algorithmes et structures de données

  1. #1
    Membre régulier Avatar de kha_yassine
    Inscrit en
    Juin 2007
    Messages
    126
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 126
    Points : 76
    Points
    76
    Par défaut recherche d'une phrase dans un texte
    salut tout le monde,

    j'aimrai avoir des algorithmes pour la recherche d'une phrase dans un texte, utilisation d'arbres , des grammaires ... ou d'autres je ne sais pas moi

    S'il y a juste des liens à des articles , sa m'interesserai



    Et merci d'avance

  2. #2
    Expert éminent
    Avatar de PRomu@ld
    Homme Profil pro
    Ingénieur de Recherche
    Inscrit en
    Avril 2005
    Messages
    4 155
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Vienne (Poitou Charente)

    Informations professionnelles :
    Activité : Ingénieur de Recherche
    Secteur : Enseignement

    Informations forums :
    Inscription : Avril 2005
    Messages : 4 155
    Points : 6 486
    Points
    6 486
    Par défaut
    En fait, pour ce qui est de l'extraction de la phrase, il suffit de découper le texte entre la majuscule et le premier point. (si la phrase est correctement orthographiée), ensuite, pour ce qui est de la reconnaissance de la phrase, une simple comparaison de chaîne peut suffire.

    Il faut que tu nous décrives un peu plus ce que tu cherches.

  3. #3
    Membre régulier Avatar de kha_yassine
    Inscrit en
    Juin 2007
    Messages
    126
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 126
    Points : 76
    Points
    76
    Par défaut
    le fait de faire une recherche sequencielle s'est facile,

    se que je cherche : une méthode utilisé avec la quelle je peut

    chercher une phrase dans un texte = recuperer une liste de paragraphes triés par ordre (qui contient le plus de mots recherché , pas certainnement tout les mots).

    - rapide en execution.
    - efficace...

    je vous remerci

  4. #4
    Expert éminent sénior

    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    10 603
    Détails du profil
    Informations personnelles :
    Âge : 66
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 10 603
    Points : 17 913
    Points
    17 913
    Billets dans le blog
    2
    Par défaut
    Citation Envoyé par kha_yassine
    je vous remerci
    de rien

    Mais on va pas le faire à ta place...

    On aide, mais on fait pas ...
    "Un homme sage ne croit que la moitié de ce qu’il lit. Plus sage encore, il sait laquelle".

    Consultant indépendant.
    Architecture systèmes complexes. Programmation grosses applications critiques. Ergonomie.
    C, Fortran, XWindow/Motif, Java

    Je ne réponds pas aux MP techniques

  5. #5
    Membre régulier Avatar de kha_yassine
    Inscrit en
    Juin 2007
    Messages
    126
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 126
    Points : 76
    Points
    76
    Par défaut
    bien sur je ne vous ais pas demander de faire quoi que se soit à ma place,

    j'aimrais just avoir des idées (mème les idées vous ne m'avez rien donner)

    se que je voulais : des liens , si vous en avez , vers des articles deja écrits sur ce sujet là (s'il y on a biensur)

    Et merci

  6. #6
    Membre expérimenté
    Avatar de coyotte507
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    1 327
    Détails du profil
    Informations personnelles :
    Âge : 33
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 1 327
    Points : 1 452
    Points
    1 452
    Par défaut
    Je ne vais pas y aller par quatre chemins (j'ai des sautes de courant...)

    Ce que tu veux, c'est pouvoir déterminer l'élément caractéristique de chaque phrase?

    Moi, ce que je ferais, pour chaque phrase je stockerais le couple verbe/sujet. Ainsi dans ma BDD j'aurais plein de couples stockés, chacun contenant les références vers les phrases corrsepondantes.

    Ca devrait convenir pour des textes relativement grands, après si nécessaire on peut ajouter d'autres paramètres en mémoire comme le nombre de lettres...

    Mais pour ça il faut analyser la phrase

    enfin pour ça il y a

    Désolé de pas pouvoir t'aider plus

  7. #7
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    25
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 25
    Points : 30
    Points
    30
    Par défaut
    il y a plusieurs moyen d'extraire des phrases :

    les expressions régulière et rationnelles : http://www.regular-expressions.info/anchors.html

    si tu utilise PHP , tu peux faire un truc comme cela :

    $montab_de_chaine=split(".", $monfichier);

    la première phrase sera contenu dans : $montab_de_chaine[0]

    sinon pour un article précis la dessus , j'en ais jamais rencontré.
    Prestation de service dans le domaine du développement Web
    http://www.alexandrepriou.fr

  8. #8
    Expert éminent Avatar de Graffito
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    5 993
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 5 993
    Points : 7 903
    Points
    7 903
    Par défaut
    Bonjour,
    algorithmes pour la recherche d'une phrase dans un texte
    Parmi ces 2 approches, laquelle devrait s'appliquer ?
    1) texte constitué avec des règles strictes (on peut trouver de telles constructions dans des systèmes expert ou des langages de programmation) : utilisation grammaire formelle.
    2) texte libre : moteur de recherche type Google.
    " Le croquemitaine ! Aaaaaah ! Où ça ? " ©Homer Simpson

  9. #9
    Membre régulier Avatar de kha_yassine
    Inscrit en
    Juin 2007
    Messages
    126
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 126
    Points : 76
    Points
    76
    Par défaut
    Merci a tous

    La réponse est cella :
    2) texte libre : moteur de recherche type Google.

    c'est un texte simple (en Arabe)

    Je pense que je vais faire des indexactions:
    la lettre <=> ensemble des emplacements des mots qui debutent avec cette lettre

    un peu près comme ca :

    "Wikipedia is a free, open content, community-built encyclopedia with "

    w, (0,66)
    i, (10)
    a , (13)
    f , (15)
    ...

    comme ca si j'ais "with" le mot a chercher:
    on regarde le premier caractère du mot = "w"
    - on voi si sa existe (en premier temps)
    - on donne l'emplacement du caractère comme un paramètre a la fonction qui va tester si c'est le mot à recherché ,
    si c'est pas lui, on passe au deuxième... etc

    est se une bonne idée ?

  10. #10
    Expert éminent
    Avatar de Jedai
    Homme Profil pro
    Enseignant
    Inscrit en
    Avril 2003
    Messages
    6 245
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Avril 2003
    Messages : 6 245
    Points : 8 586
    Points
    8 586
    Par défaut
    Pourquoi n'utilises tu pas l'un des algorithmes bien connu dans le domaine : Boyer-Moore ? Knuth-Morris-Prat ?

    Par ailleurs, s'il s'agit vraiment de faire un moteur de recherche, il y a des algorithmes spécifiques, cherche "inverted index" par exemple.

    --
    Jedaï

  11. #11
    Membre régulier Avatar de kha_yassine
    Inscrit en
    Juin 2007
    Messages
    126
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 126
    Points : 76
    Points
    76
    Par défaut
    Oui merci Jedai,

    C'est ca dont je cherchais (des noms d'algorithmes connus)

    Et merci a vous tous, c'est a moi de lire et comprendre ces algorithmes et ensuite les implementé a ma manière


  12. #12
    Expert éminent Avatar de Graffito
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    5 993
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 5 993
    Points : 7 903
    Points
    7 903
    Par défaut
    Bonjour,

    Tous les langages, peut-être même certains assembleurs, contiennent des fonctions permettant de trouver l'index d'une chaine dans une autre.

    Il faut éventuellement faire un traitement de normalisation préalable des 2 chaines :
    - pour une langue de type européén, on passera en majuscule non accentuées.
    - pour l'arabe, suppression éventuelle de la voyelisation (si mes souvenirs linguistiques sont encore bons).
    " Le croquemitaine ! Aaaaaah ! Où ça ? " ©Homer Simpson

Discussions similaires

  1. retrouver une phrase dans un texte
    Par arklane dans le forum ActionScript 1 & ActionScript 2
    Réponses: 0
    Dernier message: 22/11/2008, 19h37
  2. Recherche d'une phrase dans un fichier txt
    Par beegees dans le forum Entrée/Sortie
    Réponses: 3
    Dernier message: 03/07/2007, 08h44
  3. algorithme pour chercher une phrase dans un texte
    Par kha_yassine dans le forum Débuter avec Java
    Réponses: 8
    Dernier message: 22/06/2007, 22h24
  4. probleme affichage d'une phrase dans une zone de texte
    Par algod dans le forum Servlets/JSP
    Réponses: 2
    Dernier message: 25/05/2007, 11h14
  5. Réponses: 40
    Dernier message: 24/02/2006, 14h19

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo