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

Access Discussion :

[VBA SQL] rechercher si un pattern est inclu dans un autre


Sujet :

Access

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    14
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 14
    Points : 6
    Points
    6
    Par défaut [VBA SQL] rechercher si un pattern est inclu dans un autre
    Bonjour,

    Je travaille actuellement sur une base access 2003. Pour faire une analyse bioinfo, j'ai besoin de comparer efficacement des patterns entre eux afin de :

    - voir les inclusions (un pattern est en fait une sous partie d'un autre)
    C-G-D est inclu dans M-P-C-G-D-Y
    C-G-D est aussi inclu dans M-P-[CD]-G-D(2)-[YRM]
    (je précise que les patterns sont au format "Prosite" d'origine -pour ceux qui connaissent- mais je les traduis en SQL lors du traitement par expressions régulières et les fonctions associées)

    - les recouvrements (la fin d'un pattern est le début d'un autre)...
    ex simple : M-P-C-G-D / C-G-D-Y-L

    Je n'ai malheureusement rien trouver sur ce thème . Les seuls exemples sur les expressions régulières en SQL (ou autres) sont pour effectuer des recherches dans des chaines de caractères. Je n'ai pas trouver de solutions pour permettre d'analyser (à la place des chaine de caractères habituelles) des patterns. Je ne veux pas non plus faire toutes les combinaisons possibles des patterns pour les mettre en chaines de caractères car cela serait vraiment énormes.

    à titre d'idées :
    je travaille sur des séquences protéiques (20 acides aminés) avec en plus, la possiblité dans les pattern de mettre des incertitudes (c'est à dire un X symbolisant une des 20 lettres).
    Exemple de pattern : C-G-x-D : longueur 4, 20 combinaison possibles !! mais voici un plutot le genre de pattern que je peux obtenir : C-G-x(2,4)-D (que je convertis bien sur en SQL pour un traitement info) représente une séquence de longueur 5 à 7, mais cela donne (à cause du x) de nombreuses combinaisons !!

    Je suis ouverte à toutes suggestions... Merci !

  2. #2
    pgz
    pgz est déconnecté
    Expert éminent Avatar de pgz
    Homme Profil pro
    Développeur Office VBA
    Inscrit en
    Août 2005
    Messages
    3 692
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 70
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Office VBA
    Secteur : Conseil

    Informations forums :
    Inscription : Août 2005
    Messages : 3 692
    Points : 6 591
    Points
    6 591
    Par défaut
    Bonjour,

    Faut-il comprendre avec les exemples que tu as donnés que dans les recherches d'inclusion :
    - les séparateurs du genre - ' / ... sont ignorés?
    - dans le cas de C-G-x(2,4)-D, comment doit être traité (2,4), comme un carractère unique?

    pgz
    pluritas non est ponenda sine necessitate - Le rasoir d'Okham
    Ne jamais attribuer à la malignité ce que la stupidité peut expliquer -Le rasoir d'Hanlon

  3. #3
    Futur Membre du Club
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    14
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 14
    Points : 6
    Points
    6
    Par défaut
    Citation Envoyé par pgz
    Bonjour,

    Faut-il comprendre avec les exemples que tu as donnés que dans les recherches d'inclusion :
    - les séparateurs du genre - ' / ... sont ignorés?
    - dans le cas de C-G-x(2,4)-D, comment doit être traité (2,4), comme un carractère unique?

    pgz
    Effectivement, les - sont enlevés lors du passage en sql.
    en ce qui concerne les parenthèses, cela correspond à un intervalle de 2 à 4 acides aminés parmis les 20 possibles, donnant une chaine de longueur finale de 5 à 7 acides aminés.
    soit en SQL : CGD.{2,4}D
    Il s'agit vraiment de comparer 2 expressions régulières entre elles pour savoir si l'une comprends (inclu) l'autre ou si son début = la fin de l'autre. En prenant bien sur toutes les combinaisons des expressions régulières en compte. Ainsi, CGD.{2,4]D inclu les motifs CDG, CGDY, CGD.{2}D, C.DYN mais pas CGD.D (manque un acide aminé)

  4. #4
    Membre régulier
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    81
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 81
    Points : 88
    Points
    88
    Par défaut
    Bonjour,
    Je n'ai pas de réponse immédiate, mais tu peux toujours essayer de trouver ton bonheur ici : Les Expressions Rationnelles appliquées en VBA Access

  5. #5
    Futur Membre du Club
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    14
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 14
    Points : 6
    Points
    6
    Par défaut
    Merci quand même mais j'avais déjà regardé maintes et maintes fois ce tuto (très bien fait d'ailleurs) mais je n'ai pas trouvé mon bonheur. Je vais quand même le revoir (on ne sait jamais... ). Je continuerais un peu de chercher dans cette voie mais je vais envisager d'autres solutions également. Si jamais vous trouvez une solution plus tard, elle sera toujours la bienvenue !Merci à tous !

Discussions similaires

  1. [AC-2010] Comment rechercher si une période est comprise dans une autre ?
    Par [ZiP] dans le forum Requêtes et SQL.
    Réponses: 17
    Dernier message: 09/03/2014, 18h06
  2. VBA SQL Recherche sans accents?
    Par jojo86 dans le forum Macros et VBA Excel
    Réponses: 9
    Dernier message: 02/08/2010, 00h05
  3. [VBA-SQL] Recherche sur *nom*
    Par GarsDuCalvados dans le forum Access
    Réponses: 13
    Dernier message: 22/02/2007, 11h17
  4. [VBA][SQL] Paramètre manquant (ce qui est faux)
    Par CinErarY dans le forum Access
    Réponses: 4
    Dernier message: 24/12/2006, 17h10
  5. [VBA-E] Savoir si une cellule est contenue dans une plage
    Par psych0o0 dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 10/05/2006, 14h12

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