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 PHP Discussion :

Récupérer X caracteres précédant un caractère défini


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Février 2003
    Messages
    76
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2003
    Messages : 76
    Par défaut Récupérer X caracteres précédant un caractère défini
    bonsoir,

    dans une chaine de caracteres
    1. d4 d6 2. c4 e6 3. e4 c6 4. Nf3 Nd7 5. Nc3 e5 6. d5 c5 7. Bd3 Ndf6 8. O-O Ne7 9. Rb1 Ng6 10. b4 b6 11. a4 Nf4 12. Bxf4 exf4 13. Qd2 Ng4 14. Qxf4 f6 15. h3 Ne5 16. Nxe5 dxe5 17. Qe3 Be7 18. Kh1 O-O 19. f4 Qc7 20. b5 Bd6 21. f5 a6 22. Ra1 axb5 23. axb5 Ra5 24. Rxa5 bxa5 25. Ra1 Bb7 26. Na4 Ra8 27. Rg1 Qd7 28. Be2 Qe8 29. Nxc5 Bxc5 30. Qxc5 Qf7 31. Qa3 g6 32. g4 g5 33. Bf3 Kg7 34. c5 Qe8 35. c6 Bc8 36. b6 Ba6 37. Rb1 Rb8 38. c7 Ra8 39. b7 Bxb7 40. Rxb7 Qc8 41. Qe7+ Kh8 42. Qxf6+ Kg8 43. Qxg5+ Kh8 44. Qf6+ Kg8 45. Qe6+ Qxe6 46. fxe6 Kg7 47. Rb8 Rxb8
    je récupère le nbre de fois ainsi que l' indice ou apparait le "."
    je souhaite récupèrer les caractères précédant chacune des occurrences "." jusqu' à ce que je rencontre le caractère espace.

    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
     
    foreach($tab_chaine_test as $cle=> $valeur) {
    	$i= 1;	
    	if($valeur=== '.') {
    		//--------------------------------------------------------------
    		 echo '<br>-- L indice du caractere precedant . est: '.($cle- $i);
    		 $caractere= $tab_chaine_test[($cle- $i)];
    		 echo '. Le caractere pointe est: '.$caractere;
    		//--------------------------------------------------------------
                     while($caractere!= ' ') {
    			$i++;
    			echo $caractere;
    		}
    	}
    }
    je tombe sur une boucle infinie.

    Vous pourriez m' éclairer svp
    Merci
    areuh_fr

  2. #2
    Membre émérite

    Profil pro
    Inscrit en
    Avril 2004
    Messages
    219
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Avril 2004
    Messages : 219
    Par défaut
    En fait, dans ta boucle while tu testes tout le temps le même caractère, c'est donc normal.
    Le code serait plutôt :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    echo '. Le caractere pointe est: ';
    while($cle - $i >= 0 && ($caractere = $tab_chaine_test[($cle - $i)]) != ' ')
    {
       echo $caractere;
       $i++;
    }

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Février 2003
    Messages
    76
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2003
    Messages : 76
    Par défaut
    bonjour theseb, bonjour tout le monde,

    ton code fonctionne nickel.

    je savais qu' il y avait un prob a la def de $caractere mais je ne pensais que cela entrainait la boucle infinie. D' apres moi c' etait 2 probs bien distincts.

    En te remerciant grandement.
    je vais mettre un RESOLU, cependant une question à trotter: Pourquoi avoir modifié mon post ? Qque chose n' est pas fait, ou manque de 'netiquette' ?
    Merci pour la réponse.

    a+
    areuh_fr

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

Discussions similaires

  1. Récupérer le nombre après le caractère #
    Par JackBeauregard dans le forum Langage
    Réponses: 4
    Dernier message: 24/09/2006, 20h46
  2. Réponses: 3
    Dernier message: 06/06/2006, 15h37
  3. [pb de caractere] Conversion de caractères accentué pour url
    Par smyley dans le forum Général Conception Web
    Réponses: 7
    Dernier message: 04/11/2005, 15h55
  4. Réponses: 21
    Dernier message: 24/05/2005, 21h01
  5. Réponses: 4
    Dernier message: 11/09/2003, 21h28

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