begin process at 2012 05 29 00:00:48
  Trouver un code source :
 
dans
 
Accueil > Forum > 

PHP

 > 

Divers

 > 

Général

 > 

Code php pour comparaison de 2 chaines de caractère


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Code php pour comparaison de 2 chaines de caractère

jeudi 21 mai 2009 à 13:11:36 | Code php pour comparaison de 2 chaines de caractère

camille911

Bonjour à tous,

Voilà, je suis en train de développer un petit site de comparateur de séquences (c'est de la biologie), et je bute sur beaucoup d'obstacles, notamment celui-ci :

J'ai une chaine de caractere longue (sequence de reference) et une chaine de caractere plus courte (motif). Le problème est que, comme il s'agit de deux chaines d'ADN, il y a des lettres particulieres : par exemple, A, C, T, G. MAIS, il existe quelque chose appelé "Convention IUPAC", qui dit que S peut être égal à C ou à G, ou encore que M est égal à C ou A... (voir le 2ème tableau ici http://www.dna.affrc.go.jp/misc/MPsrch/InfoIUPAC.html).

Du coup, je ne sais pas du tout comment faire un code php qui prenne en compte ces équivalences, et que si je met un motif =STG,  je puisse retrouver une correspondance =CTG dans ma séquence de référence !

Quelqu'un serait-il assez calé pour m'aider ?

Je vous dis un grand merci par avance...








jeudi 21 mai 2009 à 14:27:47 | Re : Code php pour comparaison de 2 chaines de caractère

TychoBrahe

Salut,

En utilisant une regex c'est assez simple a faire. Le principe est de générer un motif a partir de la chaîne recherchée epuis d'effectuer un simple preg_match() pour savoir si ça correspond ou non.
jeudi 21 mai 2009 à 14:43:17 | Re : Code php pour comparaison de 2 chaines de caractère

camille911

Salut,

Déjà, merci pour ta réponse !

Il me semblait bien qu'il fallait utiliser regex, cependant je n'ai pas réussi à trouver comment ! je ne veux pas discriminer des caractères, mais dire que certains sont égaux à d'autres (S= C ou G,  M= C ou A, X= à n'importe quoi...).


jeudi 21 mai 2009 à 15:32:11 | Re : Code php pour comparaison de 2 chaines de caractère

kohntark

Membre Club
Salut,

Ca serait une bonne idée de fournir 3/4 exemples des chaînes et de ce que tu souhaites obtenir, ainsi que le code que tu as déjà écrit.

Cordialement,

Kohntark -

jeudi 21 mai 2009 à 15:55:18 | Re : Code php pour comparaison de 2 chaines de caractère

camille911

ok, alors voilà le code (en entier) que j'ai déjà écrit :

<html>
    <link rel="stylesheet" type="text/css" href="style.css">
    <?
    $seqref=$_POST['seqref'];$motif=$_POST['motif']; if (strcasecmp($seqref,$motif)<0)
{
    echo "<h1> Il y a une erreur : votre motif est plus grand que la séquence de référence </h1>";
    echo  "Il est ",date("H:i:s"),". ";
}
    else
{
    echo "<h1>Voici le résultat de votre comparaison</h1>";
    echo  "Vous vous connectez à ",date("H:i:s"),", ";
}
{
    echo "La taille de votre séquence de référence est de ",strlen($seqref)," acides aminés,";
    echo " et la taille de votre motif est de ",strlen($motif)," acides aminés.";
}
    if (eregi($motif,$seqref))
{
    echo "<b>Il y a une correspondance</b> de votre motif dans la séquence;";
    echo " il y a ",substr_count($seqref,$motif)," occurence(s) du motif dans la séquence.";
}
    else
{
    echo "<b>Il n'y a pas de correspondance</b> de votre motif dans la séquence.";
}
    ?>

<br><br><a href="index.html">Retour</a></html>



J'ai utilisé eregi (à l'ancienne) pour indiquer la correspondance entre mon motif et ma séquence, mais cela ne tient pas compte de la dégénérescence que j'expliquais : 

exemple (rappel : S = C ou G)
sequence = AGCTCSGT
motif = CCG
--> Je veux obtenir une correspondance, mais mon code actuel ne m'en donne bien sûr pas

autre exemple (rappel M = C ou A)
sequence = AGCTCSGT
motif = MGC
--> Il faut là aussi une correspondance...

Je travaille avec l'alphabet suivant : A, B, C, D, G, H, K, M, N, T, U, R, S, W, V, Y

En sachant qu'il me faut toutes les équivalences suivantes :  R = R, A ou G ; Y= Y, C, T ou U ; M = M, C ou A ; K = K, T, U ou G ; W = W, T, U ou A ; S = S, C ou G ; B = B, C,T, U ou G ; D = D, A, T, U ou G ; H = H, A, T, U, C ; V = V, A, C ou G ; et N = N, A, C, G, T, U


Cette discussion est classée dans : code, php, caractère, chaines, comparaison


Répondre à ce message

Sujets en rapport avec ce message

Transformation chaine de caractère. [ par fritz931 ] Bonjour tout le monde, J'ai un soucis pour transformer une chaine de caractère qui me servira à alimenter Highcharts. En gros je récupère mon array so moteur de recherche en php [ par aminagu ] bonjours , j essey de faire un moteur de recherche en php , le systeme me donne le message d erreur suivant : /* LIKE '%inpt%'SELECT * FROM `table-m Modifier une variable php sans passer par un fomulaire [ par mailliam ] Tcho à tous! Je veux afficher une grille faite avec 100 images (10x10). J'aimerais que quand je clique sur la 1ère image ça envoie une variable php a PHP Array, impossible de lire le contenu [ par mrassaa ] Salut, Je bosse avec Zend Framework pour pouvoir prendre des données de google spreadsheet (j'y suis obligé, pas de mysql possible). Bref, le problè Problème connection WMI en php après hébergement [ par Kaioshin12 ] Bonjour à tous, j'espère être dans la bonne partie. Voilà, je suis en train de me faire un petit utilitaire en php et WMI me permettant d'obtenir dif Envoi mail en php [ par greycats ] Bonjour, Je n'arrive pas a envoyé un simple mail en php [^^sad2]. Voici mon code source php: [code=php] <?php $to = "to@to.com"; $subject = "Test Crontab et script PHP... [ par Mickael33480 ] Bonjour à tous, Voilà j'ai un petit soucis que je n'arrive pas à avoir... Je vous explique : j'ai un script PHP qui est exécuter par crontab toutes l Affichage, enregistrement et recuperation de l'url [ par bedidaquin01 ] bonjour mes frères grands, venez moi en aide pour la réussite de mon script svp. j'ai deux page: La première:[u]maeqapeil.php[/u] j'effectue une reche cryptage/décryptage de fichiers stockés dans une base de données [ par BBFUNK01 ] Hello, Je rencontre actuellement un problème que je ne parviens pas à résoudre : J'ai une base de données qui contient différentes informations du ty


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,640 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales