Trouver plusieurs chaîne différentes dans une séquence...

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Trouver plusieurs chaîne différentes dans une séquence...

Re: Trouver plusieurs chaîne différentes dans une séquence...

par pinoche29 » 17 mai 2010, 00:18

Ok merci beaucoup !! ;)

Re: Trouver plusieurs chaîne différentes dans une séquence...

par AB » 17 mai 2010, 00:12

Alors bon je suis blonde, et je ne trouve pas le petit "tic" vert pour que le topic soit considéré comme résolu... C'est pas parce que je n'étais pas inscrite jusqu'à maintenant ?
Oui c'est pour cette raison :) il aurait fallu t'inscrire avant de poster ton message.
Mais la prochaine fois tu auras toutes les options à ta disposition :wink:

Je signale à un modo que ton sujet est résolu.

Re: Trouver plusieurs chaîne différentes dans une séquence...

par pinoche29 » 16 mai 2010, 21:32

Alors bon je suis blonde, et je ne trouve pas le petit "tic" vert pour que le topic soit considéré comme résolu... C'est pas parce que je n'étais pas inscrite jusqu'à maintenant ?

Re: Trouver plusieurs chaîne différentes dans une séquence...

par visualight » 16 mai 2010, 18:20

Hello,

Content pour toi ;)
Si tu savais mettre ton problème en résolu, ce serait cool ... En effet si une personne rencontre un problème similaire au tiens, il pourra retrouver ce message via le bouton rechercher et si en plus il est tagué comme résolu ça fera plus d'un heureux.

A+ ;)

Re: Trouver plusieurs chaîne différentes dans une séquence...

par pinoche29 » 16 mai 2010, 18:15

Bon et bien je crois que cette fois ci on est bons !! MERCI beaucoup pour votre aide, c'est très gentil (et de plus en plus rare) !! ;)

Re: Trouver plusieurs chaîne différentes dans une séquence...

par stealth35 » 16 mai 2010, 17:44

J'ai cette regexp là pour le start AUG et le stop UAG ou UGA ou UAA : '/AUG(?:[ACGU]{3}(?<!U(?:AG|GA|AA)))+U(?:AG|GA|AA)/u'
Par contre si le stop peut être : UGA ou AGA ou AGG que devient " !U(?:AG|GA|AA)))+U(?:AG|GA|AA) " ?
ca serais comme ca
/AUG(?:[ACGU]{3}(?<!(?:UAG|AGA|AGG)))+(?:UAG|AGA|AGG)/u
et ma dernière question : Comment puis-je obtenir la longueur de tous les orfs ? (La longueur de chacun des orfs additionnée)
Je sais que pour avoir la longueur d'une chaîne la fonction c'est strlen($chaine) mais si je fais strlen($value) je n'ai que la longueur du premier orf...

Exemple :

Code : Tout sélectionner

foreach ($tableau[0] as &$value) { echo "$value"; }
La si je mets ensuite strlen($value) il va correspondre qu'a la longueur d'un seul orf non ?
2 solutions sois tu crees un valiable $compteur par exemple et tu addition les valeur
$compteur = 0;
foreach ($tableau[0] as &$value)
{
$compteur += strlen($value);
}

echo $compteur;
sois avec les fonctions de tableau
echo array_sum(array_map('strlen', $tableau[0]));

Re: Trouver plusieurs chaîne différentes dans une séquence...

par pinoche29 » 16 mai 2010, 17:37

Ah oui merci !! :)

Bon ben là je crois que je vais arriver à la fin de mes problèmes, je n'ai plus que deux petites questions :

J'ai cette regexp là pour le start AUG et le stop UAG ou UGA ou UAA : '/AUG(?:[ACGU]{3}(?<!U(?:AG|GA|AA)))+U(?:AG|GA|AA)/u'
Par contre si le stop peut être : UGA ou AGA ou AGG que devient " !U(?:AG|GA|AA)))+U(?:AG|GA|AA) " ?

et ma dernière question : Comment puis-je obtenir la longueur de tous les orfs ? (La longueur de chacun des orfs additionnée)
Je sais que pour avoir la longueur d'une chaîne la fonction c'est strlen($chaine) mais si je fais strlen($value) je n'ai que la longueur du premier orf...

Exemple :

Code : Tout sélectionner

foreach ($tableau[0] as &$value) { echo "$value"; }
La si je mets ensuite strlen($value) il va correspondre qu'a la longueur d'un seul orf non ?

Re: Trouver plusieurs chaîne différentes dans une séquence...

par stealth35 » 16 mai 2010, 17:16

faut pas mettre de ; apres le foreach :wink:

Re: Trouver plusieurs chaîne différentes dans une séquence...

par pinoche29 » 16 mai 2010, 17:12

Raaaah mais j'ai toujours le même problème qui me tape sur le système !!

J'ai ce code là comme vous me l'avait dit :

Code : Tout sélectionner

preg_match_all('/AUG(?:[ACGU]{3}(?<!U(?:AG|GA|AA)))+U(?:AG|GA|AA)/u', $arn, $tableau); foreach ($tableau[0] as &$value); { echo "<br/><br/><div id='orf'><h1>ORF : </h1>ORF obtenus : $value<br/><br/>"; }
Mais avec $value : IL NE M'AFFICHE QUE LE PREMIER ORF QU'IL TROUVE !!
Sur ma séquence : CCCAUGGGGGGGGGGUAGCCCAUGAAAAAAAAAUGACCCAUGGGGGGGUAACCC
Il ne m'affiche que l'orf en rouge alors qu'il y en a deux autres après et qu'il les trouve puisqu'avec pint_r ($tableau) il me les affiche tous !!

Re: Trouver plusieurs chaîne différentes dans une séquence...

par stealth35 » 16 mai 2010, 15:57

J'ai oublié le "?"... Ca vient pas du $tableau(0) ? lol (Je mets pas des parenthèses dans mon code mais j'ai un mac donc je ne les ai pas sur mon clavier lol)
fais un var_dump($tableau)

sinon pour les crochets faut faire shift-alt + parenthese

Re: Trouver plusieurs chaîne différentes dans une séquence...

par pinoche29 » 15 mai 2010, 23:45

J'ai oublié le "?"... Ca vient pas du $tableau(0) ? lol (Je mets pas des parenthèses dans mon code mais j'ai un mac donc je ne les ai pas sur mon clavier lol)

Re: Trouver plusieurs chaîne différentes dans une séquence...

par pinoche29 » 15 mai 2010, 23:43

Nan, ça m'affiche toujours que le premier orf... Ca vient pas du "$tableau (0)" .

Re: Trouver plusieurs chaîne différentes dans une séquence...

par stealth35 » 15 mai 2010, 00:01

CCCAUGGGGGGGGGGUAGCCCAUGAAAAAAAAAUGACCCAUGGGGGGGUAACCC

Voilà normalement tu obtiens 3 séquences et aucun C.
$arn = 'CCCAUGGGGGGGGGGUAGCCCAUGAAAAAAAAAUGACCCAUGGGGGGGUAACCC';
preg_match_all('/AUG(?:[ACGU]{3}(?<!U(?:AG|GA|AA)))+U(?:AG|GA|AA)/u', $arn, $tableau);
foreach ($tableau[0] as $value)
{
    $orf = chunk_split($value, 3, ' ');
    echo "<br/><br/><div id='orf'><h1>ORF : </h1>ORF obtenus : $orf<br/><br/>";
}

Code : Tout sélectionner

ORF : ORF obtenus : AUG GGG GGG GGG UAG ORF : ORF obtenus : AUG AAA AAA AAA UGA ORF : ORF obtenus : AUG GGG GGG UAA

Re: Trouver plusieurs chaîne différentes dans une séquence...

par pinoche29 » 14 mai 2010, 23:13

CCCAUGGGGGGGGGGUAGCCCAUGAAAAAAAAAUGACCCAUGGGGGGGUAACCC

Voilà normalement tu obtiens 3 séquences et aucun C.

Re: Trouver plusieurs chaîne différentes dans une séquence...

par stealth35 » 14 mai 2010, 23:08

t'as une chaine complète pour que je puisse tester :wink: