Bonjour,

J'interroge ma base de donnée et j'y recherche la séquence de mon amorce dans une séquence. cela fonctionne très bien pour une amorce unique. Maintenant, j'aimerais pouvoir y rechercher des séquences d'amorces dégénérées.

Voici ma séquence à trouver ggagaaRgttcacgttgaYat mais Perl peut il reconnaitre le R (=a ou g) et le Y (=t ou c).
En fait j'ai 4 séquences différentes à rechercher:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
 
        my ($AmorceSens1)="ggagaaGgttcacgttgaTat";
        my ($AmorceSens2)="ggagaaAgttcacgttgaCat";
        my ($AmorceSens3)="ggagaaGgttcacgttgaCat";
        my ($AmorceSens4)="ggagaaAgttcacgttgaTat";
my($s)=index(@row->[1],'GGAGAAAGTTCACGTTGACAT');

@row->[1] contient ma séquence entière d'ADN
GGAGAAAGTTCACGTTGACAT est une des 4 amorces à trouver


Je peux y parvenir en y faisant 4 recherches mais serait il possible de
- soit dire à BioPerl que je travaille sur de l ADN afin qu'il sache à quoi correspondent mon R et mon Y
- soit créer une expression régulière dans ma recherche d'index pour qu'il recherche un A ou un G et ensuite un C ou un T.

J'aimerais aussi savoir si on peut la recherche insensible à la casse (majuscule et minuscule). Je dois utiliser l'option i (/gi).

Est-il correcte d'écrire
Code : Sélectionner tout - Visualiser dans une fenêtre à part
my ($AmorceSens)=~"ggagaa[A,G]gttcacgttga[T,C]at/gi";


Mon programme m'indique aussi que j'utilise une array sans y mettre le @
"using an array as deprecated "
Pourtant, j'ai bien mis le @ à row, il m'indique en erreur ma ligne
Code : Sélectionner tout - Visualiser dans une fenêtre à part
my($s)=index(@row->[1],'TTAATTGAACAAAAGAGTTA');
Merci beaucoup,

Jasmine,