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

Langage Perl Discussion :

Reg Exp et performance


Sujet :

Langage Perl

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éprouvé
    Avatar de Jasmine80
    Femme Profil pro
    Bioinformaticienne
    Inscrit en
    Octobre 2006
    Messages
    3 157
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 45
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Bioinformaticienne
    Secteur : Santé

    Informations forums :
    Inscription : Octobre 2006
    Messages : 3 157
    Par défaut Reg Exp et performance
    Je ne sais pas quelle est la meilleure façon des 2 de procéder. Quand on hésite entre 2 façon de coder, comment estimer la meilleure?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    #!/usr/bin/perl
     
    use strict;
    use warnings;
     
    my $pcr_template = 'AAACATGCCACATCATAACTTTAAGGTGTAATGGTTAATGATAAAGTATTAGAAACATCGAAAGAGATGTATGTTGAGCAAAAATGTCTGATATTTTATAAAACTTTAAAGGAAAATGTTTGAGTGTACCAGTTGGAATACTAAAGGATTACAACAAGTTAAAGGAGAGAAAGTTATGTCAGAAGAAATGAATGACCAAATGTTGGTTCGACGTCAAAAATTACAAGAATTATATGATCTTGGTATAGACCCGTTTGGTTCTAAATTTGACCGTTCAGGTTTATCTAGTGATTTGAAAGAAGAGTGGGACCAGTATTCTAAAGAAGAATTGGTAGAAAAAGAAGCGGATAGTCATGTCGCTATAGCTGGACGATTAATGACTAAGCGTGGTAAAGGTAAAGCAGGATTTGCACACGTTCAGGACTTAGCTGGACAAATTCAAATTTACGTTCGTAAAGATCAAGTTGGCGATGACGAATTTGATTTATGGAAAAATGCTGATTTAGGCGATATCGTTGGTGTTGAAGGTGTAATGTTCAAAACAAATACTGGCGAATTATCGGTTAAAGCGAAGAAATTCACGCTACTAACTAAATCATTGCGACCATTACCGGATAAATTCCACGGTTTACAGGATATTGAACAGAGATATCGTCAAAGATATTTAGATTTAATTACGAACGAAGATAGCACTCGTACATTTATTAATCGTAGTAAAATCATTCAAGAAATGCGTAATTATTTAAATAATAAAGGTTTCTTGGAAGTAGAAACACCTATGATGCACCAAATTGCTGGTGGAGCAGCTGCTAGACCATTTGTAACACATCATAATGCATTAGATGCAACGTTATACATGCGTATTGCTATTGAGTTGCATTTAAAACGTTTAATTGTCGGTGGACTTGAAAAAGTATATGAAATTGGTAGAGTATTCCGTAATGAAGGTGTATCAACTAGACATAACCCTGAATTCACAATGATTGAATTATATGAAGCATATGCAGATTATCATGACATTATGGATTTAACAGAATCTATGGTGAGACATATTGCCAATGAAGTGTTAGGTTCTGCAAAAGTACAATACAATGGGGAAACGATTGATTTAGAATCTGCTTGGACTCGTTTGCATATTGTTGATGCTGTAAAAGAAGCTACTGGTGTAGATTTTTATGAAGTTAAAAGTGATGAAGAACGTAAAGCTTTAGCTAAAGAACATGGTATTGAAATTAAAGATACAATGAAATATGGTCATATTTTAAATGAATTCTTTGAGCAAAAAGTTGAAGAAACACTTATTCAGCCAACGTTTATCTATGGTCATCCGACTGAAATTTCACCTTTAGCGAAGAAAAATCCTGAAGATCCTAGATTTACTGATCGTTTCGAATTGTTCATTGTAGGTAGAGAGCATGCAAATCGATTTACTGAATTAAATGATCCTATTGATCAAAAAGGTCGTTTTGAAGCGCAACTTGTTGAAAAAGCGCAAGGTAATGATGAAGCGCATGAAATGGATGAAGATTACATTGAAGCGTTAGAATATGGTATGCCTCCGACAGGTGGTCTTGGTATCGGTATTGACAGATTGGTTATGTTATTAACTGACTCTCCATCAATCAGAGACGTATTATTATTCCCTTATATGAGACAAAAATAAATGACGTTGATTGTTAGTAAGAGCTCTCGTGTATACAACATGTGTATGCGAGGGCTTTCTTAATTATGGTAATTAGTTCGTGTTTGAATGTTTTTGATAGTAATAGTTAACGATAGTGGTGCTATTTTTGACTGTTAAACAAGGTAGTTGGCTGATAGATGAAAATGACGATACGTATATAGAGTAGTTCGGATGAGAAATGTTAACGATAGACATTGAGATATCTTATAACAAAAATTGCTATATTAGTATAATTTATCTTAATCAGCTATAAAAGTACTTTAAAATTGTATAGAATGTGTATGGTTTTGTACATATGTATATGATAGAATACTAAAAGTGTTATGAATTAGAGGGCACGAGAAATGTCAGTTTTGAAGAATAAAAAAGTTGATTAAAAGTGTTGACTTTATCAATTGAATGAAGTAATATATAAAAGTCGTCAAAAACAGACGAAACACACTAAAAGCTGATGTGACAAAGTTTACATCAAAGTGTAAAATTAACTATTGCACCTTATTAATTAAGCGTGTATCATGAATAAGTAAGTTATTTTGTCTGGTGACTATAGCAAGGAGGTCACACCTGTTCCCATGCCGAACACAGAAGTTAAGCTCCTTAGCGTCGATGGTAGTCGAACTTACGTTCCGCTAGAGTAGAACGTTGCCAGGCAAATGACAAATCGGAGAATTAGCTCAGCTGGGAGAGCATCTGCCTTACAAGCAGAGGGTCGGCGGTTCGAACCCGTCATTCTCCACCATTTATTCTTAGATATAGCCGGCCTAGCTCAATTGGTAGAGCAACTGACTTGTAATCAGTAGGTTGGGGGTTCAAGTCCTCTGGCCGGCACCATCTTTTGAGCCATTAGCTCAGCTGGTAGAGCATCTGACTTTTAATCAGAGGGTCAGAGGTTCGAATCCTCTATGGCTCATTACATTTAATTTTTATATTTAGCAAAATAATGCAGAAGTAGTTCAGCGGTAGAATACAACCTTGCCAAGGTTGGGGTCGCGGGTTCGAATCCCGTCTTCTGCTCCATTATTTTGCCGGGGTGGCGGAACTGGCAGACGCACAGGACTTAAAATCCTGCGGTGAGAGATCACCGTACCGGTTCGATTCCGGTCCTCGGCACCATTTTAGCGCCCGTAGCTCAATTGGATAGAGCGTTTGACTACGGATCAAGAGGTTATGGGTTCGACTCCTATCGGGCGCGCCATTTTTAAATTAATTGAATAACGGGAAGTAGCTCAGCTTGGTAGAGCACTTGGTTTGGGACCAAGGGGTCGCAGGTTCGAATCCTGTCTTCCCGATTACTTCTTAAATTCCATTTTATGGGGGCTTAGCTCAGCTGGGAGAGCGCCTGCTTTGCACGCAGGAGGTCAGCGGTTCGATCCCGCTAGTCTCCACCATTTATTTTTTACACGATGAACATTGAAAACTGAATGACAATATGTCAACGTTAATTCCAAAAAACGTAACTATAAGTTACAAACATTATTTAGTATTTATGAGCTAATCAAACATCATAATTTTTATGGAGAGTTTGATCCTGGCTCAGGATGAACGCTGGCGGCGTGCCTAATACATGCAAGTCGAGCGAACGGACGAGAAGCTTGCTTCTCTGATGTTAGCGGCGGACGGGTGAGTAACACGTGGATAACCTACCTATAAGACTGGGATAACTTCGGGAAACCGGAGCTAATACCGGATAATATTTTGAACCGCATGGTTCAAAAGTGAAAGACGGTCTTGCTGTCACTTATAGATGGATCCGCGCTGCATTAGCTAGTTGGTAAGGTAACGGCTTACCAAGGCAACGATGCATAGCCGACCTGAGAGGGTGATCGGCCACACTGGAACTGAGACACGGTCCAGACTCCTACGGGAGGCAGCAGTAGGGAATCTTCCGCAATGGGCGAAAGCCTGACGGAGCAACGCCGCGTGAGTGATGAAGGTCTTCGGATCGTAAAACTCTGTTATTAGGGAAGAACATATGTGTAAGTAACTGTGCACATCTTGACGGTACCTAATCAGAAAGCCACGGCTAACTACGTGCCAGCAGCCGCGGTAATACGTAGGTGGCAAGCGTTATCCGGAATTATTGGGCGTAAAGCGCGCGTAGGCGGTTTTTTAAGTCTGATGTGAAAGCCCACGGCTCAACCGTGGAGGGTCATTGGAAACTGGAAAACTTGAGTGCAGAAGAGGAAAGTGGAATTCCATGTGTAGCGGTGAAATGCGCAGAGATATGGAGGAACACCAGTGGCGAAGGCGACTTTCTGGTCTGTAACTGACGCTGATGTGCGAAAGCGTGGGGATCAAACAGGATTAGATACCCTGGTAGTCCACGCCGTAAACGATGAGTGCTAAGTGTTAGGGGGTTTCCGCCCCTTAGTGCTGCAGCTAACGCATTAAGCACTCCGCCTGGGGAGTACGACCGCAAGGTTGAAACTCAAAGGAATTGACGGGGACCCGCACAAGCGGTGGAGCATGTGGTTTAATTCGAAGCAACGCGAAGAACCTTACCAAATCTTGACATCCTTTGACAACTCTAGAGATAGAGCCTTCCCCTTCGGGGGACAAAGTGACAGGTGGTGCATGGTTGTCGTCAGCTCGTGTCGTGAGATGTTGGGTTAAGTCCCGCAACGAGCGCAACCCTTAAGCTTAGTTGCCATCATTAAGTTGGGCACTCTAAGTTGACTGCCGGTGACAAACCGGAGGAAGGTGGGGATGACATCAAATCATCATGCCCCTTATGATTTGGGCTACACACGTGCTACAATGGACAATACAAAGGGCAGCGAAACCGCGAGGTCAAGCAAATCCCATAAAGTTGTTCTCAGTTCGGATTGTAGTCTGCAACTCGACTACATGAAGCTGGAATCGCTAGTAATCGTAGATCAGCATGCTACGGTGAATACGTTCCCGGGTCTTGTACACACCGCCCGTCACACCACGAGAGTTTGTAACACCCGAAGCCGGTGGAGTAACCTTTTAGGAGCCAGCCGTCGAAGGTGGGACAAATGATTGGGGTGAAGTCGTAACAAGGTAGCCGTATCGGAAGGTGCGGCTGGATCACCTCCTTTCTAAGGATATATTCGGAACATCTTCTTCAGAAGATGCGGAATAACGTGACATATTGTATTCAGTTTTGAATGTTTATTTAACATTCAAAAAAATGGGCCTATAGCTCAGCTGGTTAGAGCGCACGCCTGATAAGCGTGAGGTCGGTGGTTCGAGTCCACTTAGGCCCACCATTATTTGTACATTGAAAACTAGATAAGTAAGTAAAATATAGATTTTACCAAGCAAAACCGAGTGAATAAAGAGTTTTAAATAAGCTTGAATTCATAAGAAATAATCGCTAGTGTTCGAAAGAACCATCACAAGATTAATAACGCGTTTAAATCTTTTTATAAAAGAAAACGTTTAGCAGACAATGAGTTAAATTATTTTAAAGCAGAGTTTACTTATGTAAATGAGCATTTAAAATAATGAAAACGAAGCCGTATGTGAGCGTTTGACTTATAAAAATGGTGGAAACATAGATTAAGTTATTAAGGGCGCACGGTGGATGCCTTGGCACTAGAAGCCGATGAAGGACGTTACTAACGACGATATGCTTTGGGGAGCTGTAAGTAAGCTTTGATCCAGAGATTTCCGAATGGGGAAACCCAGCATGAGTTATGTCATGTTATCGATATGTGAATACATAGCATATCAGAAGGCACACCCGGAGAACTGAAACATCTTAGTACCCGGAGGAAGAGAAAGAAAATTCGATTCCCTTAGTAGCGGCGAGCGAAACGGGAAGAGCCCAAACCAACAAGCTTGCTTGTTGGGGTTGTAGGACACTCTATACGGAGTTACAAAGGACGACATTAGACGAATCATCTGGAAAGATGAATCAAAGAAGGTAATAATCCTGTAGTCGAAAATGTTGTCTCTCTTGAGTGGATCCTGAGTACGACGGAGCACGTGAAATTCCGTCGGAATCTGGGAGGACCATCTCCTAAGGCTAAATACTCTCTAGTGACCGATAGTGAACCAGTACCGTGAGGGAAAGGTGAAAAGCACCCCGGAAGGGGAGTGAAATAGAACCTGAAACCGTGTGCTTACAAGTAGTCAGAGCCCGTTAATGGGTGATGGCGTGCCTTTTGTAGAATGAACCGGCGAGTTACGATTTGATGCAAGGTTAAGCAGTAAATGTGGAGCCGTAGCGAAAGCGAGTCTGAATAGGGCGTTTAGTATTTGGTCGTAGACCCGAAACCAGGTGATCTACCCTTGGTCAGGTTGAAGTTCAGGTAACACTGAATGGAGGACCGAACCGACTTACGTTGAAAAGTGAGCGGATGAACTGAGGGTAGCGGAGAAATTCCAATCGAACCTGGAGATAGCTGGTTCTCTCCGAAATAGCTTTAGGGCTAGCCTCAAGTGATGATTATTGGAGGTAGAGCACTGTTTGGACGAGGGGCCCCTCTCGGGTTACCGAATTCAGACAAACTCCGAATGCCAATTAATTTAACTTGGGAGTCAGAACATGGGTGATAAGGTCCGTGTTCGAAAGGGAAACAGCCCAGACCACCAGCTAAGGTCCCAAAATATATGTTAAGTGGAAAAGGATGTGGCGTTGCCCAGACAACTAGGATGTTGGCTTAGAAGCAGCCATCATTTAAAGAGTGCGTAATAGCTCACTAGTCGAGTGACACTGCGCCGAAAATGTACCGGGGCTAAACATATTACCGAAGCTGTGGATTGTCCTTTGGACAATGGTAGGAGAGCGTTCTAAGGGCGTTGAAGCATGATCGTAAGGACATGTGGAGCGCTTAGAAGTGAGAATGCCGGTGTGAGTAGCGAAAGACGGGTGAGAATCCCGTCCACCGATTGACTAAGGTTTCCAGAGGAAGGCTCGTCCGCTCTGGGTTAGTCGGGTCCTAAGCTGAGGCCGACAGGCGTAGGCGATGGATAACAGGTTGATATTCCTGTACCACCTATAATCGTTTTAATCGATGGGGGGACGCAGTAGGATAGGCGAAGCGTGCGATTGGATTGCACGTCTAAGCAGTAAGGCTGAGTATTAGGCAAATCCGGTACTCGTTAAGGCTGAGCTGTGATGGGGAGAAGACATTGTGTCTTCGAGTCGTTGATTTCACACTGCCGAGAAAAGCCTCTAGATAGAAAATAGGTGCCCGTACCGCAAACCGACACAGGTAGTCAAGATGAGAATTCTAAGGTGAGCGAGCGAACTCTCGTTAAGGAACTCGGCAAAATGACCCCGTAACTTCGGGAGAAGGGGTGCTCTTTAGGGTTAACGCCCAGAAGAGCCGCAGTGAATAGGCCCAAGCGACTGTTTATCAAAAACACAGGTCTCTGCTAAACCGTAAGGTGATGTATAGGGGCTGACGCCTGCCCGGTGCTGGAAGGTTAAGAGGAGTGGTTAGCTTCTGCGAAGCTACGAATCGAAGCCCCAGTAAACGGCGGCCGTAACTATAACGGTCCTAAGGTAGCGAAATTCCTTGTCGGGTAAGTTCCGACCCGCACGAAAGGCGTAACGATTTGGGCACTGTCTCAACGAGAGACTCGGTGAAATCATAGTACCTGTGAAGATGCAGGTTACCCGCGACAGGACGGAAAGACCCCGTGGAGCTTTACTGTAGCCTGATATTGAAATTCGGCACAGCTTGTACAGGATAGGTAGGAGCCTTTGAAACGTGAGCGCTAGCTTACGTGGAGGCGCTGGTGGGATACTACCCTAGCTGTGTTGGCTTTCTAACCCGCACCACTTATCGTGGTGGGAGACAGTGTCAGGCGGGCAGTTTGACTGGGGCGGTCGCCTCCTAAAAGGTAACGGAGGCGCTCAAAGGTTCCCTCAGAATGGTTGGAAATCATTCATAGAGTGTAAAGGCATAAGGGAGCTTGACTGCGAGACCTACAAGTCGAGCAGGGTCGAAAGACGGACTTAGTGATCCGGTGGTTCCGCATGGAAGGGCCATCGCTCAACGGATAAAAGCTACCCCGGGGATAACAGGCTTATCTCCCCCAAGAGTTCACATCGACGGGGAGGTTTGGCACCTCGATGTCGGCTCATCGCATCCTGGGGCTGTAGTCGGTCCCAAGGGTTGGGCTGTTCGCCCATTAAAGCGGTACGCGAGCTGGGTTCAGAACGTCGTGAGACAGTTCGGTCCCTATCCGTCGTGGGCGTAGGAAATTTGAGAGGAGCTGTCCTTAGTACGAGAGGACCGGGATGGACATACCTCTGGTGTACCAGTTGTCGTGCCAACGGCATAGCTGGGTAGCTATGTGTGGACGGGATAAGTGCTGAAAGCATCTAAGCATGAAGCCCCCCTCAAGATGAGATTTCCCAACTTCGGTTATAAGATCCCTCAAAGATGATGAGGTTAATAGGTTCGAGGTGGAAGCATGGTGACATGTGGAGCTGACGAATACTAATCGATCGAGGGCTTAACCAAAATAAATGTTTTGCGAAGCAAAATCACTTTTACTTACTATCTAGTTTTGAATGTATAAATTACATTCATATGTCTGGTGACTATAGCAAGGAGGTCACACCTGTTCCCATGCCGAACACAGAAGTTAAGCTCCTTAGCGTCGATGGTAGTCGAACTTACGTTCCGCTAGAGTAGAACGTTGCCAGGCAGTTTTTTAATCAATTTTGGTTAAAAAATAAAATGGACAAGATAAAAAAAGTTATTGACTTAAATGTTAATAAAATGTATAATTAATTCTTGTCGGTAAGAAAAATGAACATTGAAAACTGAATGACAATATGTCAACGTTAATTCCAAAAAACGTAACTATAAGTTACAAACATTATTTAGTATTTATGAGCTAATCAAACATCATAATTTTTATGGAGAGTTTGATCCTGGCTCAGGATGAACGCTGGCGGCGTGCCTAATACATGCAAGTCGAGCGAACGGACGAGAAGCTTGCTTCTCTGATGTTAGCGGCGGACGGGTGAGTAACACGTGGATAACCTACCTATAAGACTGGGATAACTTCGGGAAACCGGAGCTAATACCGGATAATATTTTGAACCGCATGGTTCAAAAGTGAAAGACGGTCTTGCTGTCACTTATAGATGGATCCGCGCTGCATTAGCTAGTTGGTAAGGTAACGGCTTACCAAGGCAACGATGCATAGCCGACCTGAGAGGGTGATCGGCCACACTGGAACTGAGACACGGTCCAGACTCCTACGGGAGGCAGCAGTAGGGAATCTTCCGCAATGGGCGAAAGCCTGACGGAGCAACGCCGCGTGAGTGATGAAGGTCTTCGGATCGTAAAACTCTGTTATTAGGGAAGAACATATGTGTAAGTAACTGTGCACATCTTGACGGTACCTAATCAGAAAGCCACGGCTAACTACGTGCCAGCAGCCGCGGTAATACGTAGGTGGCAAGCGTTATCCGGAATTATTGGGCGTAAAGCGCGCGTAGGCGGTTTTTTAAGTCTGATGTGAAAGCCCACGGCTCAACCGTGGAGGGTCATTGGAAACTGGAAAACTTGAGTGCAGAAGAGGAAAGTGGAATTCCATGTGTAGCGGTGAAATGCGCAGAGATATGGAGGAACACCAGTGGCGAAGGCGACTTTCTGGTCTGTAACTGACGCTGATGTGCGAAAGCGTGGGGATCAAACAGGATTAGATACCCTGGTAGTCCACGCCGTAAACGATGAGTGCTAAGTGTTAGGGGGTTTCCGCCCCTTAGTGCTGCAGCTAACGCATTAAGCACTCCGCCTGGGGAGTACGACCGCAAGGTTGAAACTCAAAGGAATTGACGGGGACCCGCACAAGCGGTGGAGCATGTGGTTTAATTCGAAGCAACGCGAAGAACCTTACCAAATCTTGACATCCTTTGACAACTCTAGAGATAGAGCCTTCCCCTTCGGGGGACAAAGTGACAGGTGGTGCATGGTTGTCGTCAGCTCGTGTCGTGAGATGTTGGGTTAAGTCCCGCAACGAGCGCAACCCTTAAGCTTAGTTGCCATCATTAAGTTGGGCACTCTAAGTTGACTGCCGGTGACAAACCGGAGGAAGGTGGGGATGACATCAAATCATCATGCCCCTTATGATTTGGGCTACACACGTGCTACAATGGACAATACAAAGGGCAGCGAAACCGCGAGGTCAAGCAAATCCCATAAAGTTGTTCTCAGTTCGGATTGTAGTCTGCAACTCGACTACATGAAGCTGGAATCGCTAGTAATCGTAGATCAGCATGCTACGGTGAATACGTTCCCGGGTCTTGTACACACCGCCCGTCACACCACGAGAGTTTGTAACACCCGAAGCCGGTGGAGTAACCTTTTAGGAGCCAGCCGTCGAAGGTGGGACAAATGATTGGGGTGAAGTCGTAACAAGGTAGCCGTATCGGAAGGTGCGGCTGGATCACCTCCTTTCTAAGGATATATCGGAACATCTTCTTCAGAAGATGCGGAATAATGTGACATATTGTATCAGTTTTGAATGTTTATTTAACATTCAAATATTTTTTGGTTAAAGTGATATTGCTTATCGAGCGCTTGACTAAAAAGAAATTGTACATTGAAAACTAGATAAGTAAGTAAAATATAGATTTTACCAAGCAAAACCGAGTGAATAAAGAGTTTTAAATAAGCTTGAATTCATAAGAAATAATCGCTAGTGTTCGAAAGAACATCACAAGATTAATAACGCGTTTCCTGTAGGATGGAAACATAGATTAAGTTATTAAGGGCGCACGGTGGATGCCTTGGCACTAGAAGCCGATGAAGGACGTTACTAACGACGATATGCTTTGGGGAGCTGTAAGTAAGCTTTGATCCAGAGATTTCCGAATGGGGAAACCCAGCATGAGTTATGTCATGTTATCGATATGTGAATACATAGCATATCAGAAGGCACACCCGGAGAACTGAAACATCTTAGTACCCGGAGGAAGAGAAAGAAAATTCGATTCCCTTAGTAGCGGCGAGCGAAACGGGAAGAGCCCAAACCAACAAGCTTGCTTGTTGGGGTTGTAGGACACTCTATACGGAGTTACAAAGGACGACATTAGACGAATCATCTGGAAAGATGAATCAAAGAAGGTAATAATCCTGTAGTCGAAAATGTTGTCTCTCTTGAGTGGATCCTGAGTACGACGGAGCACGTGAAATTCCGTCGGAATCTGGGAGGACCATCTCCTAAGGCTAAATACTCTCTAGTGACCGATAGTGAACCAGTACCGTGAGGGAAAGGTGAAAAGCACCCCGGAAGGGGAGTGAAATAGAACCTGAAACCGTGTGCTTACAAGTAGTCAGAGCCCGTTAATGGGTGATGGCGTGCCTTTTGTAGAATGAACCGGCGAGTTACGATTTGATGCAAGGTTAAGCAGTAAATGTGGAGCCGTAGCGAAAGCGAGTCTGAATAGGGCGTTTAGTATTTGGTCGTAGACCCGAAACCAGGTGATCTACCCTTGGTCAGGTTGAAGTTCAGGTAACACTGAATGGAGGACCGAACCGACTTACGTTGAAAAGTGAGCGGATGAACTGAGGGTAGCGGAGAAATTCCAATCGAACCTGGAGATAGCTGGTTCTCTCCGAAATAGCTTTAGGGCTAGCCTCAAGTGATGATTATTGGAGGTAGAGCACTGTTTGGACGAGGGGCCCCTCTCGGGTTACCGAATTCAGACAAACTCCGAATGCCAATTAATTTAACTTGGGAGTCAGAACATGGGTGATAAGGTCCGTGTTCGAAAGGGAAACAGCCCAGACCACCAGCTAAGGTCCCAAAATATATGTTAAGTGGAAAAGGATGTGGCGTTGCCCAGACAACTAGGATGTTGGCTTAGAAGCAGCCATCATTTAAAGAGTGCGTAATAGCTCACTAGTCGAGTGACACTGCGCCGAAAATGTACCGGGGCTAAACATATTACCGAAGCTGTGGATTGTCCTTTGGACAATGGTAGGAGAGCGTTCTAAGGGCGTTGAAGCATGATCGTAAGGACATGTGGAGCGCTTAGAAGTGAGAATGCCGGTGTGAGTAGCGAAAGACGGGTGAGAATCCCGTCCACCGATTGACTAAGGTTTCCAGAGGAAGGCTCGTCCGCTCTGGGTTAGTCGGGTCCTAAGCTGAGGCCGACAGGCGTAGGCGATGGATAACAGGTTGATATTCCTGTACCACCTATAATCGTTTTAATCGATGGGGGGACGCAGTAGGATAGGCGAAGCGTGCGATTGGATTGCACGTCTAAGCAGTAAGGCTGAGTATTAGGCAAATCCGGTACTCGTTAAGGCTGAGCTGTGATGGGGAGAAGACATTGTGTCTTCGAGTCGTTGATTTCACACTGCCGAGAAAAGCCTCTAGATAGAAAATAGGTGCCCGTACCGCAAACCGACACAGGTAGTCAAGATGAGAATTCTAAGGTGAGCGAGCGAACTCTCGTTAAGGAACTCGGCAAAATGACCCCGTAACTTCGGGAGAAGGGGTGCTCTTTAGGGTTAACGCCCAGAAGAGCCGCAGTGAATAGGCCCAAGCGACTGTTTATCAAAAACACAGGTCTCTGCTAAACCGTAAGGTGATGTATAGGGGCTGACGCCTGCCCGGTGCTGGAAGGTTAAGAGGAGTGGTTAGCTTCTGCGAAGCTACGAATCGAAGCCCCAGTAAACGGCGGCCGTAACTATAACGGTCCTAAGGTAGCGAAATTCCTTGTCGGGTAAGTTCCGACCCGCACGAAAGGCGTAACGATTTGGGCACTGTCTCAACGAGAGACTCGGTGAAATCATAGTACCTGTGAAGATGCAGGTTACCCGCGACAGGACGGAAAGACCCCGTGGAGCTTTACTGTAGCCTGATATTGAAATTCGGCACAGCTTGTACAGGATAGGTAGGAGCCTTTGAAACGTGAGCGCTAGCTTACGTGGAGGCGCTGGTGGGATACTACCCTAGCTGTGTTGGCTTTCTAACCCGCACCACTTATCGTGGTGGGAGACAGTGTCAGGCGGGCAGTTTGACTGGGGCGGTCGCCTCCTAAAAGGTAACGGAGGCGCTCAAAGGTTCCCTCAGAATGGTTGGAAATCATTCATAGAGTGTAAAGGCATAAGGGAGCTTGACTGCGAGACCTACAAGTCGAGCAGGGTCGAAAGACGGACTTAGTGATCCGGTGGTTCCGCATGGAAGGGCCATCGCTCAACGGATAAAAGCTACCCCGGGGATAACAGGCTTATCTCCCCCAAGAGTTCACATCGACGGGGAGGTTTGGCACCTCGATGTCGGCTCATCGCATCCTGGGGCTGTAGTCGGTCCCAAGGGTTGGGCTGTTCGCCCATTAAAGCGGTACGCGAGCTGGGTTCAGAACGTCGTGAGACAGTTCGGTCCCTATCCGTCGTGGGCGTAGGAAATTTGAGAGGAGCTGTCCTTAGTACGAGAGGACCGGGATGGACATACCTCTGGTGTACCAGTTGTCGTGCCAACGGCATAGCTGGGTAGCTATGTGTGGACGGGATAAGTGCTGAAAGCATCTAAGCATGAAGCCCCCCTCAAGATGAGATTTCCCAACTTCGGTTATAAGATC';
     
    # amorces sens dans le sens 5' -> 3'
    my $for = 'AAABATGCCMCATCATAACTTKAAGGTGT';
     
    my %correspondances = (
                'R' => ['A', 'G'],
                'K' => ['G', 'T'],
                'S' => ['C', 'G'],
                'W' => ['A', 'T'],
                'M' => ['A', 'C'],
                'Y' => ['C', 'T'],
                'D' => ['A', 'G', 'T'],
                'V' => ['A', 'C', 'G'],
                'B' => ['C', 'G', 'T'],
                'H' => ['A', 'C', 'T'],
                'N' => ['A', 'C', 'G', 'T'],
    );
     
     
    my $for_rx;
    my @for_nuc = split //, $for;
    foreach my $nuc (@for_nuc){
    	if (exists $correspondances{$nuc}){
    		$for_rx .= '[';
    		map {$for_rx .= $_} @{$correspondances{$nuc}};
    		$for_rx .= ']';
    	}
    	else{
    		$for_rx .= $nuc;
    	}
    }
    print $for_rx."\n";
    # AAA[CGT]ATGCC[AC]CATCATAACTT[GT]AAGGTGT
     
    if ($pcr_template =~ m/$for_rx/){
    	print "for primer matches\n";
    }

    ou d'utiliser
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    use strict;
    use warnings;
     
    # module permettant de créer la liste correspondante
    use Bio::Seq;
    use Bio::Tools::IUPAC;
     
     
    my $pcr_template = 'AAACATGCCACATCATAACTTTAAGGTGTAATGGTTAATGATAAAGTATTAGAAACATCGAAAGAGATGTATGTTGAGCAAAAATGTCTGATATTTTATAAAACTTTAAAGGAAAATGTTTGAGTGTACCAGTTGGAATACTAAAGGATTACAACAAGTTAAAGGAGAGAAAGTTATGTCAGAAGAAATGAATGACCAAATGTTGGTTCGACGTCAAAAATTACAAGAATTATATGATCTTGGTATAGACCCGTTTGGTTCTAAATTTGACCGTTCAGGTTTATCTAGTGATTTGAAAGAAGAGTGGGACCAGTATTCTAAAGAAGAATTGGTAGAAAAAGAAGCGGATAGTCATGTCGCTATAGCTGGACGATTAATGACTAAGCGTGGTAAAGGTAAAGCAGGATTTGCACACGTTCAGGACTTAGCTGGACAAATTCAAATTTACGTTCGTAAAGATCAAGTTGGCGATGACGAATTTGATTTATGGAAAAATGCTGATTTAGGCGATATCGTTGGTGTTGAAGGTGTAATGTTCAAAACAAATACTGGCGAATTATCGGTTAAAGCGAAGAAATTCACGCTACTAACTAAATCATTGCGACCATTACCGGATAAATTCCACGGTTTACAGGATATTGAACAGAGATATCGTCAAAGATATTTAGATTTAATTACGAACGAAGATAGCACTCGTACATTTATTAATCGTAGTAAAATCATTCAAGAAATGCGTAATTATTTAAATAATAAAGGTTTCTTGGAAGTAGAAACACCTATGATGCACCAAATTGCTGGTGGAGCAGCTGCTAGACCATTTGTAACACATCATAATGCATTAGATGCAACGTTATACATGCGTATTGCTATTGAGTTGCATTTAAAACGTTTAATTGTCGGTGGACTTGAAAAAGTATATGAAATTGGTAGAGTATTCCGTAATGAAGGTGTATCAACTAGACATAACCCTGAATTCACAATGATTGAATTATATGAAGCATATGCAGATTATCATGACATTATGGATTTAACAGAATCTATGGTGAGACATATTGCCAATGAAGTGTTAGGTTCTGCAAAAGTACAATACAATGGGGAAACGATTGATTTAGAATCTGCTTGGACTCGTTTGCATATTGTTGATGCTGTAAAAGAAGCTACTGGTGTAGATTTTTATGAAGTTAAAAGTGATGAAGAACGTAAAGCTTTAGCTAAAGAACATGGTATTGAAATTAAAGATACAATGAAATATGGTCATATTTTAAATGAATTCTTTGAGCAAAAAGTTGAAGAAACACTTATTCAGCCAACGTTTATCTATGGTCATCCGACTGAAATTTCACCTTTAGCGAAGAAAAATCCTGAAGATCCTAGATTTACTGATCGTTTCGAATTGTTCATTGTAGGTAGAGAGCATGCAAATCGATTTACTGAATTAAATGATCCTATTGATCAAAAAGGTCGTTTTGAAGCGCAACTTGTTGAAAAAGCGCAAGGTAATGATGAAGCGCATGAAATGGATGAAGATTACATTGAAGCGTTAGAATATGGTATGCCTCCGACAGGTGGTCTTGGTATCGGTATTGACAGATTGGTTATGTTATTAACTGACTCTCCATCAATCAGAGACGTATTATTATTCCCTTATATGAGACAAAAATAAATGACGTTGATTGTTAGTAAGAGCTCTCGTGTATACAACATGTGTATGCGAGGGCTTTCTTAATTATGGTAATTAGTTCGTGTTTGAATGTTTTTGATAGTAATAGTTAACGATAGTGGTGCTATTTTTGACTGTTAAACAAGGTAGTTGGCTGATAGATGAAAATGACGATACGTATATAGAGTAGTTCGGATGAGAAATGTTAACGATAGACATTGAGATATCTTATAACAAAAATTGCTATATTAGTATAATTTATCTTAATCAGCTATAAAAGTACTTTAAAATTGTATAGAATGTGTATGGTTTTGTACATATGTATATGATAGAATACTAAAAGTGTTATGAATTAGAGGGCACGAGAAATGTCAGTTTTGAAGAATAAAAAAGTTGATTAAAAGTGTTGACTTTATCAATTGAATGAAGTAATATATAAAAGTCGTCAAAAACAGACGAAACACACTAAAAGCTGATGTGACAAAGTTTACATCAAAGTGTAAAATTAACTATTGCACCTTATTAATTAAGCGTGTATCATGAATAAGTAAGTTATTTTGTCTGGTGACTATAGCAAGGAGGTCACACCTGTTCCCATGCCGAACACAGAAGTTAAGCTCCTTAGCGTCGATGGTAGTCGAACTTACGTTCCGCTAGAGTAGAACGTTGCCAGGCAAATGACAAATCGGAGAATTAGCTCAGCTGGGAGAGCATCTGCCTTACAAGCAGAGGGTCGGCGGTTCGAACCCGTCATTCTCCACCATTTATTCTTAGATATAGCCGGCCTAGCTCAATTGGTAGAGCAACTGACTTGTAATCAGTAGGTTGGGGGTTCAAGTCCTCTGGCCGGCACCATCTTTTGAGCCATTAGCTCAGCTGGTAGAGCATCTGACTTTTAATCAGAGGGTCAGAGGTTCGAATCCTCTATGGCTCATTACATTTAATTTTTATATTTAGCAAAATAATGCAGAAGTAGTTCAGCGGTAGAATACAACCTTGCCAAGGTTGGGGTCGCGGGTTCGAATCCCGTCTTCTGCTCCATTATTTTGCCGGGGTGGCGGAACTGGCAGACGCACAGGACTTAAAATCCTGCGGTGAGAGATCACCGTACCGGTTCGATTCCGGTCCTCGGCACCATTTTAGCGCCCGTAGCTCAATTGGATAGAGCGTTTGACTACGGATCAAGAGGTTATGGGTTCGACTCCTATCGGGCGCGCCATTTTTAAATTAATTGAATAACGGGAAGTAGCTCAGCTTGGTAGAGCACTTGGTTTGGGACCAAGGGGTCGCAGGTTCGAATCCTGTCTTCCCGATTACTTCTTAAATTCCATTTTATGGGGGCTTAGCTCAGCTGGGAGAGCGCCTGCTTTGCACGCAGGAGGTCAGCGGTTCGATCCCGCTAGTCTCCACCATTTATTTTTTACACGATGAACATTGAAAACTGAATGACAATATGTCAACGTTAATTCCAAAAAACGTAACTATAAGTTACAAACATTATTTAGTATTTATGAGCTAATCAAACATCATAATTTTTATGGAGAGTTTGATCCTGGCTCAGGATGAACGCTGGCGGCGTGCCTAATACATGCAAGTCGAGCGAACGGACGAGAAGCTTGCTTCTCTGATGTTAGCGGCGGACGGGTGAGTAACACGTGGATAACCTACCTATAAGACTGGGATAACTTCGGGAAACCGGAGCTAATACCGGATAATATTTTGAACCGCATGGTTCAAAAGTGAAAGACGGTCTTGCTGTCACTTATAGATGGATCCGCGCTGCATTAGCTAGTTGGTAAGGTAACGGCTTACCAAGGCAACGATGCATAGCCGACCTGAGAGGGTGATCGGCCACACTGGAACTGAGACACGGTCCAGACTCCTACGGGAGGCAGCAGTAGGGAATCTTCCGCAATGGGCGAAAGCCTGACGGAGCAACGCCGCGTGAGTGATGAAGGTCTTCGGATCGTAAAACTCTGTTATTAGGGAAGAACATATGTGTAAGTAACTGTGCACATCTTGACGGTACCTAATCAGAAAGCCACGGCTAACTACGTGCCAGCAGCCGCGGTAATACGTAGGTGGCAAGCGTTATCCGGAATTATTGGGCGTAAAGCGCGCGTAGGCGGTTTTTTAAGTCTGATGTGAAAGCCCACGGCTCAACCGTGGAGGGTCATTGGAAACTGGAAAACTTGAGTGCAGAAGAGGAAAGTGGAATTCCATGTGTAGCGGTGAAATGCGCAGAGATATGGAGGAACACCAGTGGCGAAGGCGACTTTCTGGTCTGTAACTGACGCTGATGTGCGAAAGCGTGGGGATCAAACAGGATTAGATACCCTGGTAGTCCACGCCGTAAACGATGAGTGCTAAGTGTTAGGGGGTTTCCGCCCCTTAGTGCTGCAGCTAACGCATTAAGCACTCCGCCTGGGGAGTACGACCGCAAGGTTGAAACTCAAAGGAATTGACGGGGACCCGCACAAGCGGTGGAGCATGTGGTTTAATTCGAAGCAACGCGAAGAACCTTACCAAATCTTGACATCCTTTGACAACTCTAGAGATAGAGCCTTCCCCTTCGGGGGACAAAGTGACAGGTGGTGCATGGTTGTCGTCAGCTCGTGTCGTGAGATGTTGGGTTAAGTCCCGCAACGAGCGCAACCCTTAAGCTTAGTTGCCATCATTAAGTTGGGCACTCTAAGTTGACTGCCGGTGACAAACCGGAGGAAGGTGGGGATGACATCAAATCATCATGCCCCTTATGATTTGGGCTACACACGTGCTACAATGGACAATACAAAGGGCAGCGAAACCGCGAGGTCAAGCAAATCCCATAAAGTTGTTCTCAGTTCGGATTGTAGTCTGCAACTCGACTACATGAAGCTGGAATCGCTAGTAATCGTAGATCAGCATGCTACGGTGAATACGTTCCCGGGTCTTGTACACACCGCCCGTCACACCACGAGAGTTTGTAACACCCGAAGCCGGTGGAGTAACCTTTTAGGAGCCAGCCGTCGAAGGTGGGACAAATGATTGGGGTGAAGTCGTAACAAGGTAGCCGTATCGGAAGGTGCGGCTGGATCACCTCCTTTCTAAGGATATATTCGGAACATCTTCTTCAGAAGATGCGGAATAACGTGACATATTGTATTCAGTTTTGAATGTTTATTTAACATTCAAAAAAATGGGCCTATAGCTCAGCTGGTTAGAGCGCACGCCTGATAAGCGTGAGGTCGGTGGTTCGAGTCCACTTAGGCCCACCATTATTTGTACATTGAAAACTAGATAAGTAAGTAAAATATAGATTTTACCAAGCAAAACCGAGTGAATAAAGAGTTTTAAATAAGCTTGAATTCATAAGAAATAATCGCTAGTGTTCGAAAGAACCATCACAAGATTAATAACGCGTTTAAATCTTTTTATAAAAGAAAACGTTTAGCAGACAATGAGTTAAATTATTTTAAAGCAGAGTTTACTTATGTAAATGAGCATTTAAAATAATGAAAACGAAGCCGTATGTGAGCGTTTGACTTATAAAAATGGTGGAAACATAGATTAAGTTATTAAGGGCGCACGGTGGATGCCTTGGCACTAGAAGCCGATGAAGGACGTTACTAACGACGATATGCTTTGGGGAGCTGTAAGTAAGCTTTGATCCAGAGATTTCCGAATGGGGAAACCCAGCATGAGTTATGTCATGTTATCGATATGTGAATACATAGCATATCAGAAGGCACACCCGGAGAACTGAAACATCTTAGTACCCGGAGGAAGAGAAAGAAAATTCGATTCCCTTAGTAGCGGCGAGCGAAACGGGAAGAGCCCAAACCAACAAGCTTGCTTGTTGGGGTTGTAGGACACTCTATACGGAGTTACAAAGGACGACATTAGACGAATCATCTGGAAAGATGAATCAAAGAAGGTAATAATCCTGTAGTCGAAAATGTTGTCTCTCTTGAGTGGATCCTGAGTACGACGGAGCACGTGAAATTCCGTCGGAATCTGGGAGGACCATCTCCTAAGGCTAAATACTCTCTAGTGACCGATAGTGAACCAGTACCGTGAGGGAAAGGTGAAAAGCACCCCGGAAGGGGAGTGAAATAGAACCTGAAACCGTGTGCTTACAAGTAGTCAGAGCCCGTTAATGGGTGATGGCGTGCCTTTTGTAGAATGAACCGGCGAGTTACGATTTGATGCAAGGTTAAGCAGTAAATGTGGAGCCGTAGCGAAAGCGAGTCTGAATAGGGCGTTTAGTATTTGGTCGTAGACCCGAAACCAGGTGATCTACCCTTGGTCAGGTTGAAGTTCAGGTAACACTGAATGGAGGACCGAACCGACTTACGTTGAAAAGTGAGCGGATGAACTGAGGGTAGCGGAGAAATTCCAATCGAACCTGGAGATAGCTGGTTCTCTCCGAAATAGCTTTAGGGCTAGCCTCAAGTGATGATTATTGGAGGTAGAGCACTGTTTGGACGAGGGGCCCCTCTCGGGTTACCGAATTCAGACAAACTCCGAATGCCAATTAATTTAACTTGGGAGTCAGAACATGGGTGATAAGGTCCGTGTTCGAAAGGGAAACAGCCCAGACCACCAGCTAAGGTCCCAAAATATATGTTAAGTGGAAAAGGATGTGGCGTTGCCCAGACAACTAGGATGTTGGCTTAGAAGCAGCCATCATTTAAAGAGTGCGTAATAGCTCACTAGTCGAGTGACACTGCGCCGAAAATGTACCGGGGCTAAACATATTACCGAAGCTGTGGATTGTCCTTTGGACAATGGTAGGAGAGCGTTCTAAGGGCGTTGAAGCATGATCGTAAGGACATGTGGAGCGCTTAGAAGTGAGAATGCCGGTGTGAGTAGCGAAAGACGGGTGAGAATCCCGTCCACCGATTGACTAAGGTTTCCAGAGGAAGGCTCGTCCGCTCTGGGTTAGTCGGGTCCTAAGCTGAGGCCGACAGGCGTAGGCGATGGATAACAGGTTGATATTCCTGTACCACCTATAATCGTTTTAATCGATGGGGGGACGCAGTAGGATAGGCGAAGCGTGCGATTGGATTGCACGTCTAAGCAGTAAGGCTGAGTATTAGGCAAATCCGGTACTCGTTAAGGCTGAGCTGTGATGGGGAGAAGACATTGTGTCTTCGAGTCGTTGATTTCACACTGCCGAGAAAAGCCTCTAGATAGAAAATAGGTGCCCGTACCGCAAACCGACACAGGTAGTCAAGATGAGAATTCTAAGGTGAGCGAGCGAACTCTCGTTAAGGAACTCGGCAAAATGACCCCGTAACTTCGGGAGAAGGGGTGCTCTTTAGGGTTAACGCCCAGAAGAGCCGCAGTGAATAGGCCCAAGCGACTGTTTATCAAAAACACAGGTCTCTGCTAAACCGTAAGGTGATGTATAGGGGCTGACGCCTGCCCGGTGCTGGAAGGTTAAGAGGAGTGGTTAGCTTCTGCGAAGCTACGAATCGAAGCCCCAGTAAACGGCGGCCGTAACTATAACGGTCCTAAGGTAGCGAAATTCCTTGTCGGGTAAGTTCCGACCCGCACGAAAGGCGTAACGATTTGGGCACTGTCTCAACGAGAGACTCGGTGAAATCATAGTACCTGTGAAGATGCAGGTTACCCGCGACAGGACGGAAAGACCCCGTGGAGCTTTACTGTAGCCTGATATTGAAATTCGGCACAGCTTGTACAGGATAGGTAGGAGCCTTTGAAACGTGAGCGCTAGCTTACGTGGAGGCGCTGGTGGGATACTACCCTAGCTGTGTTGGCTTTCTAACCCGCACCACTTATCGTGGTGGGAGACAGTGTCAGGCGGGCAGTTTGACTGGGGCGGTCGCCTCCTAAAAGGTAACGGAGGCGCTCAAAGGTTCCCTCAGAATGGTTGGAAATCATTCATAGAGTGTAAAGGCATAAGGGAGCTTGACTGCGAGACCTACAAGTCGAGCAGGGTCGAAAGACGGACTTAGTGATCCGGTGGTTCCGCATGGAAGGGCCATCGCTCAACGGATAAAAGCTACCCCGGGGATAACAGGCTTATCTCCCCCAAGAGTTCACATCGACGGGGAGGTTTGGCACCTCGATGTCGGCTCATCGCATCCTGGGGCTGTAGTCGGTCCCAAGGGTTGGGCTGTTCGCCCATTAAAGCGGTACGCGAGCTGGGTTCAGAACGTCGTGAGACAGTTCGGTCCCTATCCGTCGTGGGCGTAGGAAATTTGAGAGGAGCTGTCCTTAGTACGAGAGGACCGGGATGGACATACCTCTGGTGTACCAGTTGTCGTGCCAACGGCATAGCTGGGTAGCTATGTGTGGACGGGATAAGTGCTGAAAGCATCTAAGCATGAAGCCCCCCTCAAGATGAGATTTCCCAACTTCGGTTATAAGATCCCTCAAAGATGATGAGGTTAATAGGTTCGAGGTGGAAGCATGGTGACATGTGGAGCTGACGAATACTAATCGATCGAGGGCTTAACCAAAATAAATGTTTTGCGAAGCAAAATCACTTTTACTTACTATCTAGTTTTGAATGTATAAATTACATTCATATGTCTGGTGACTATAGCAAGGAGGTCACACCTGTTCCCATGCCGAACACAGAAGTTAAGCTCCTTAGCGTCGATGGTAGTCGAACTTACGTTCCGCTAGAGTAGAACGTTGCCAGGCAGTTTTTTAATCAATTTTGGTTAAAAAATAAAATGGACAAGATAAAAAAAGTTATTGACTTAAATGTTAATAAAATGTATAATTAATTCTTGTCGGTAAGAAAAATGAACATTGAAAACTGAATGACAATATGTCAACGTTAATTCCAAAAAACGTAACTATAAGTTACAAACATTATTTAGTATTTATGAGCTAATCAAACATCATAATTTTTATGGAGAGTTTGATCCTGGCTCAGGATGAACGCTGGCGGCGTGCCTAATACATGCAAGTCGAGCGAACGGACGAGAAGCTTGCTTCTCTGATGTTAGCGGCGGACGGGTGAGTAACACGTGGATAACCTACCTATAAGACTGGGATAACTTCGGGAAACCGGAGCTAATACCGGATAATATTTTGAACCGCATGGTTCAAAAGTGAAAGACGGTCTTGCTGTCACTTATAGATGGATCCGCGCTGCATTAGCTAGTTGGTAAGGTAACGGCTTACCAAGGCAACGATGCATAGCCGACCTGAGAGGGTGATCGGCCACACTGGAACTGAGACACGGTCCAGACTCCTACGGGAGGCAGCAGTAGGGAATCTTCCGCAATGGGCGAAAGCCTGACGGAGCAACGCCGCGTGAGTGATGAAGGTCTTCGGATCGTAAAACTCTGTTATTAGGGAAGAACATATGTGTAAGTAACTGTGCACATCTTGACGGTACCTAATCAGAAAGCCACGGCTAACTACGTGCCAGCAGCCGCGGTAATACGTAGGTGGCAAGCGTTATCCGGAATTATTGGGCGTAAAGCGCGCGTAGGCGGTTTTTTAAGTCTGATGTGAAAGCCCACGGCTCAACCGTGGAGGGTCATTGGAAACTGGAAAACTTGAGTGCAGAAGAGGAAAGTGGAATTCCATGTGTAGCGGTGAAATGCGCAGAGATATGGAGGAACACCAGTGGCGAAGGCGACTTTCTGGTCTGTAACTGACGCTGATGTGCGAAAGCGTGGGGATCAAACAGGATTAGATACCCTGGTAGTCCACGCCGTAAACGATGAGTGCTAAGTGTTAGGGGGTTTCCGCCCCTTAGTGCTGCAGCTAACGCATTAAGCACTCCGCCTGGGGAGTACGACCGCAAGGTTGAAACTCAAAGGAATTGACGGGGACCCGCACAAGCGGTGGAGCATGTGGTTTAATTCGAAGCAACGCGAAGAACCTTACCAAATCTTGACATCCTTTGACAACTCTAGAGATAGAGCCTTCCCCTTCGGGGGACAAAGTGACAGGTGGTGCATGGTTGTCGTCAGCTCGTGTCGTGAGATGTTGGGTTAAGTCCCGCAACGAGCGCAACCCTTAAGCTTAGTTGCCATCATTAAGTTGGGCACTCTAAGTTGACTGCCGGTGACAAACCGGAGGAAGGTGGGGATGACATCAAATCATCATGCCCCTTATGATTTGGGCTACACACGTGCTACAATGGACAATACAAAGGGCAGCGAAACCGCGAGGTCAAGCAAATCCCATAAAGTTGTTCTCAGTTCGGATTGTAGTCTGCAACTCGACTACATGAAGCTGGAATCGCTAGTAATCGTAGATCAGCATGCTACGGTGAATACGTTCCCGGGTCTTGTACACACCGCCCGTCACACCACGAGAGTTTGTAACACCCGAAGCCGGTGGAGTAACCTTTTAGGAGCCAGCCGTCGAAGGTGGGACAAATGATTGGGGTGAAGTCGTAACAAGGTAGCCGTATCGGAAGGTGCGGCTGGATCACCTCCTTTCTAAGGATATATCGGAACATCTTCTTCAGAAGATGCGGAATAATGTGACATATTGTATCAGTTTTGAATGTTTATTTAACATTCAAATATTTTTTGGTTAAAGTGATATTGCTTATCGAGCGCTTGACTAAAAAGAAATTGTACATTGAAAACTAGATAAGTAAGTAAAATATAGATTTTACCAAGCAAAACCGAGTGAATAAAGAGTTTTAAATAAGCTTGAATTCATAAGAAATAATCGCTAGTGTTCGAAAGAACATCACAAGATTAATAACGCGTTTCCTGTAGGATGGAAACATAGATTAAGTTATTAAGGGCGCACGGTGGATGCCTTGGCACTAGAAGCCGATGAAGGACGTTACTAACGACGATATGCTTTGGGGAGCTGTAAGTAAGCTTTGATCCAGAGATTTCCGAATGGGGAAACCCAGCATGAGTTATGTCATGTTATCGATATGTGAATACATAGCATATCAGAAGGCACACCCGGAGAACTGAAACATCTTAGTACCCGGAGGAAGAGAAAGAAAATTCGATTCCCTTAGTAGCGGCGAGCGAAACGGGAAGAGCCCAAACCAACAAGCTTGCTTGTTGGGGTTGTAGGACACTCTATACGGAGTTACAAAGGACGACATTAGACGAATCATCTGGAAAGATGAATCAAAGAAGGTAATAATCCTGTAGTCGAAAATGTTGTCTCTCTTGAGTGGATCCTGAGTACGACGGAGCACGTGAAATTCCGTCGGAATCTGGGAGGACCATCTCCTAAGGCTAAATACTCTCTAGTGACCGATAGTGAACCAGTACCGTGAGGGAAAGGTGAAAAGCACCCCGGAAGGGGAGTGAAATAGAACCTGAAACCGTGTGCTTACAAGTAGTCAGAGCCCGTTAATGGGTGATGGCGTGCCTTTTGTAGAATGAACCGGCGAGTTACGATTTGATGCAAGGTTAAGCAGTAAATGTGGAGCCGTAGCGAAAGCGAGTCTGAATAGGGCGTTTAGTATTTGGTCGTAGACCCGAAACCAGGTGATCTACCCTTGGTCAGGTTGAAGTTCAGGTAACACTGAATGGAGGACCGAACCGACTTACGTTGAAAAGTGAGCGGATGAACTGAGGGTAGCGGAGAAATTCCAATCGAACCTGGAGATAGCTGGTTCTCTCCGAAATAGCTTTAGGGCTAGCCTCAAGTGATGATTATTGGAGGTAGAGCACTGTTTGGACGAGGGGCCCCTCTCGGGTTACCGAATTCAGACAAACTCCGAATGCCAATTAATTTAACTTGGGAGTCAGAACATGGGTGATAAGGTCCGTGTTCGAAAGGGAAACAGCCCAGACCACCAGCTAAGGTCCCAAAATATATGTTAAGTGGAAAAGGATGTGGCGTTGCCCAGACAACTAGGATGTTGGCTTAGAAGCAGCCATCATTTAAAGAGTGCGTAATAGCTCACTAGTCGAGTGACACTGCGCCGAAAATGTACCGGGGCTAAACATATTACCGAAGCTGTGGATTGTCCTTTGGACAATGGTAGGAGAGCGTTCTAAGGGCGTTGAAGCATGATCGTAAGGACATGTGGAGCGCTTAGAAGTGAGAATGCCGGTGTGAGTAGCGAAAGACGGGTGAGAATCCCGTCCACCGATTGACTAAGGTTTCCAGAGGAAGGCTCGTCCGCTCTGGGTTAGTCGGGTCCTAAGCTGAGGCCGACAGGCGTAGGCGATGGATAACAGGTTGATATTCCTGTACCACCTATAATCGTTTTAATCGATGGGGGGACGCAGTAGGATAGGCGAAGCGTGCGATTGGATTGCACGTCTAAGCAGTAAGGCTGAGTATTAGGCAAATCCGGTACTCGTTAAGGCTGAGCTGTGATGGGGAGAAGACATTGTGTCTTCGAGTCGTTGATTTCACACTGCCGAGAAAAGCCTCTAGATAGAAAATAGGTGCCCGTACCGCAAACCGACACAGGTAGTCAAGATGAGAATTCTAAGGTGAGCGAGCGAACTCTCGTTAAGGAACTCGGCAAAATGACCCCGTAACTTCGGGAGAAGGGGTGCTCTTTAGGGTTAACGCCCAGAAGAGCCGCAGTGAATAGGCCCAAGCGACTGTTTATCAAAAACACAGGTCTCTGCTAAACCGTAAGGTGATGTATAGGGGCTGACGCCTGCCCGGTGCTGGAAGGTTAAGAGGAGTGGTTAGCTTCTGCGAAGCTACGAATCGAAGCCCCAGTAAACGGCGGCCGTAACTATAACGGTCCTAAGGTAGCGAAATTCCTTGTCGGGTAAGTTCCGACCCGCACGAAAGGCGTAACGATTTGGGCACTGTCTCAACGAGAGACTCGGTGAAATCATAGTACCTGTGAAGATGCAGGTTACCCGCGACAGGACGGAAAGACCCCGTGGAGCTTTACTGTAGCCTGATATTGAAATTCGGCACAGCTTGTACAGGATAGGTAGGAGCCTTTGAAACGTGAGCGCTAGCTTACGTGGAGGCGCTGGTGGGATACTACCCTAGCTGTGTTGGCTTTCTAACCCGCACCACTTATCGTGGTGGGAGACAGTGTCAGGCGGGCAGTTTGACTGGGGCGGTCGCCTCCTAAAAGGTAACGGAGGCGCTCAAAGGTTCCCTCAGAATGGTTGGAAATCATTCATAGAGTGTAAAGGCATAAGGGAGCTTGACTGCGAGACCTACAAGTCGAGCAGGGTCGAAAGACGGACTTAGTGATCCGGTGGTTCCGCATGGAAGGGCCATCGCTCAACGGATAAAAGCTACCCCGGGGATAACAGGCTTATCTCCCCCAAGAGTTCACATCGACGGGGAGGTTTGGCACCTCGATGTCGGCTCATCGCATCCTGGGGCTGTAGTCGGTCCCAAGGGTTGGGCTGTTCGCCCATTAAAGCGGTACGCGAGCTGGGTTCAGAACGTCGTGAGACAGTTCGGTCCCTATCCGTCGTGGGCGTAGGAAATTTGAGAGGAGCTGTCCTTAGTACGAGAGGACCGGGATGGACATACCTCTGGTGTACCAGTTGTCGTGCCAACGGCATAGCTGGGTAGCTATGTGTGGACGGGATAAGTGCTGAAAGCATCTAAGCATGAAGCCCCCCTCAAGATGAGATTTCCCAACTTCGGTTATAAGATC';
     
    # amorces sens dans le sens 5' -> 3'
    my $for = 'AAABATGCCMCATCATAACTTKAAGGTGT';
     
    # recherche des amorces correspondantes
    my $for_ambiseq = Bio::Seq->new(-seq => $for, -alphabet => 'dna');
    my $for_stream  = Bio::Tools::IUPAC->new(-seq => $for_ambiseq );
     
    # liste contenant les amorces correspondantes
    my @for_list;
     
    while (my $uniqueseq = $for_stream->next_seq()) {
    	push (@for_list, $uniqueseq->seq);
    }
     
    # ExpReg de l'amorce for
    my $for_rx = join '|', map {quotemeta $_} @for_list;
     
    print $for_rx."\n";
    # AAACATGCCACATCATAACTTGAAGGTGT|AAAGATGCCACATCATAACTTGAAGGTGT|AAATATGCCACATCATAACTTGAAGGTGT|AAACATGCCCCATCATAACTTGAAGGTGT|AAAGATGCCCCATCATAACTTGAAGGTGT|AAATATGCCCCATCATAACTTGAAGGTGT|AAACATGCCACATCATAACTTTAAGGTGT|AAAGATGCCACATCATAACTTTAAGGTGT|AAATATGCCACATCATAACTTTAAGGTGT|AAACATGCCCCATCATAACTTTAAGGTGT|AAAGATGCCCCATCATAACTTTAAGGTGT|AAATATGCCCCATCATAACTTTAAGGTGT
     
    if ($pcr_template =~ m/$for_rx/){
    	print "for primer matches\n";
    }
    La première façon génère une expression régulière différente et peut-être meilleure. Par contre, le second code me permet d'utiliser un module au lieu d'un hash que je crée moi-même. Que feriez-vous?


    Merci,

  2. #2
    Membre émérite
    Profil pro
    Assistant recherche bioinformatique
    Inscrit en
    Novembre 2007
    Messages
    877
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations professionnelles :
    Activité : Assistant recherche bioinformatique

    Informations forums :
    Inscription : Novembre 2007
    Messages : 877
    Par défaut
    Re-coucou
    la 1ere est plus lisible humainement, donc possiblement plus facile à sortir, à debugger, et a reprendre dans qq mois
    Si la rapidité doit etre un critere, chronometre le regex dans ta condition pour 1M d'executions

    Z.

  3. #3
    Membre éprouvé
    Avatar de Jasmine80
    Femme Profil pro
    Bioinformaticienne
    Inscrit en
    Octobre 2006
    Messages
    3 157
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 45
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Bioinformaticienne
    Secteur : Santé

    Informations forums :
    Inscription : Octobre 2006
    Messages : 3 157
    Par défaut
    Citation Envoyé par Zwiter Voir le message
    Re-coucou
    la 1ere est plus lisible humainement, donc possiblement plus facile à sortir, à debugger, et a reprendre dans qq mois
    Si la rapidité doit etre un critere, chronometre le regex dans ta condition pour 1M d'executions
    Z.
    Merci pour ta réponse. J'hésite parce qu'il me semble qu'il est toujours préférable si possible d'utiliser un module existant au lieu de le réécrire, de risquer d'y faire des fautes et d'avoir quelque chose de moins performant. Question temps, je ne suis pas à 5 minutes près ... mais en général, j'ai quand même beaucoup de séquences à traiter.

  4. #4
    Membre émérite
    Profil pro
    Assistant recherche bioinformatique
    Inscrit en
    Novembre 2007
    Messages
    877
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations professionnelles :
    Activité : Assistant recherche bioinformatique

    Informations forums :
    Inscription : Novembre 2007
    Messages : 877
    Par défaut
    le test de la 1ere solution met 10sec pour 15sec avec la 2eme solution chez moi, pour 10M d'execution :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    my $start_time;
    start_timer();
     
    for my $i (0 .. 10000000) {
    	print "count: $i \n" unless ($i % 1000000);
    	$pcr_template =~ m/$for_rx/;
    	}
    print "time: ", show_timer(), "\n";
    exit;
     
    sub start_timer {
    	$start_time = `date '+%s%N'`;
    	}
     
    sub show_timer {
    	return "\033[31m", (`date '+%s%N'` - $start_time) / 1000000, " ms\033[0m";
    	}

  5. #5
    Membre éprouvé
    Avatar de Jasmine80
    Femme Profil pro
    Bioinformaticienne
    Inscrit en
    Octobre 2006
    Messages
    3 157
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 45
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Bioinformaticienne
    Secteur : Santé

    Informations forums :
    Inscription : Octobre 2006
    Messages : 3 157
    Par défaut
    Merci pour cette information. Il me faudrait un module d'évaluation des performances de codes ... ça doit bien exister.

  6. #6
    Membre émérite
    Profil pro
    Assistant recherche bioinformatique
    Inscrit en
    Novembre 2007
    Messages
    877
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations professionnelles :
    Activité : Assistant recherche bioinformatique

    Informations forums :
    Inscription : Novembre 2007
    Messages : 877
    Par défaut
    Sur quelles criteres se baser aussi :
    La mémoire utilisée ?
    --> interessant avec des enormes tableaux de hash (j'en fait de plus de 20GO)
    Le temps processeur utilisé ?
    --> utile pour traiter pleins de petit traitements, genre algo d'optimisation type sac a dos...
    Z.

  7. #7
    Expert confirmé
    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
    Par défaut
    Citation Envoyé par Jasmine80 Voir le message
    Merci pour cette information. Il me faudrait un module d'évaluation des performances de codes ... ça doit bien exister.
    Perl vient par défaut avec le module Benchmark qui propose un certain nombre de fonctions pour comparer des solutions.

    --
    Jedaï

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. soucis de reg exp
    Par glouffy6 dans le forum Langage
    Réponses: 4
    Dernier message: 31/07/2007, 14h05
  2. galère avec les reg exp
    Par glouffy6 dans le forum Langage
    Réponses: 1
    Dernier message: 18/07/2007, 16h34
  3. Réponses: 3
    Dernier message: 10/10/2006, 11h15
  4. reg exp : caracteres speciaux
    Par frouge dans le forum Langage
    Réponses: 2
    Dernier message: 07/06/2006, 17h49

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