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 :

Expression regulière dans un tableau


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
    Juillet 2010
    Messages
    79
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2010
    Messages : 79
    Par défaut Expression regulière dans un tableau
    Bonjour,

    j'ai un fichier texte qui représente un annuaire, j'arrive à afficher mon fichier texte sous forme de tableau.
    Cependant j'aimerai n'afficher que les nom commençant par la lettre A. J'ai donc fait plusieurs tentative
    avec un while un for et meme un if... mais je pense que c'est au niveaux de mon expression régulière qui bug..
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    foreach($lignes as $ligne_num => $ligne) { // on lit le fichier de façon séquentielle
    $array = explode('|', $ligne); // retire le séparateur
    echo '<tr>';
    echo '<td>'. $array[0] .'</td>';
    echo '<td>'.$array[1] .'</td>';
    echo '<td>'. $array[2] .'</td>';
    echo '<td>'. $array[3] .'</td>';
    echo '<td>'. $array[4] .'</td>';
    echo '</tr>';
    }
    Boucle englobant le script précédent :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    while ($array[0]='/^A/') {
    SCRIPT PRECEDENT
    }
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    if($array[0]='/^A/') {
    SCRIPT PRECEDENT
    }
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    for ($array[0]='/^A/';) {
    SCRIPT PRECEDENT
    }
    Une idée ?

    merci

  2. #2
    Membre chevronné
    Avatar de kalimukti
    Homme Profil pro
    Développeur Web
    Inscrit en
    Octobre 2011
    Messages
    262
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Octobre 2011
    Messages : 262
    Par défaut
    Désolé mais je ne comprends pas, ton
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    while ($array[0]='/^A/') {
    SCRIPT PRECEDENT
    }
    englobe la partie du code où tu définie ton $array ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    foreach($lignes as $ligne_num => $ligne) { // on lit le fichier de façon séquentielle
    $array = explode('|', $ligne); // retire le séparateur
    echo '<tr>';
    echo '<td>'. $array[0] .'</td>';
    echo '<td>'.$array[1] .'</td>';
    echo '<td>'. $array[2] .'</td>';
    echo '<td>'. $array[3] .'</td>';
    echo '<td>'. $array[4] .'</td>';
    echo '</tr>';
    }

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2010
    Messages
    79
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2010
    Messages : 79
    Par défaut
    Oui ma boucle englobe ma partie ou j'affiche mon array sur page web.

    J'ai donc essayé avec un if, un for, et un while...

    En faite pour faire simple je pense que mon script ne prend a aucun moment mon expression régulière...

    Ma question est donc : Quel expression régulière ( et quel boucle) dois je utiliser pour n'afficher seulement que les nom ( qui se situe dans mon array[0] ) qui commence par A.

  4. #4
    Membre chevronné
    Avatar de kalimukti
    Homme Profil pro
    Développeur Web
    Inscrit en
    Octobre 2011
    Messages
    262
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Octobre 2011
    Messages : 262
    Par défaut
    Citation Envoyé par visto94 Voir le message
    Oui ma boucle englobe ma partie ou j'affiche mon array sur page web..
    Tu ne fais pas là qu'afficher ton array, tu le définis. Donc ce qui vient avant n'a pa de valeur (ton array[0] placé avant n'a pas la valeur que tu lui veux).
    Ensuite, dans ton contrôle sur l'expression régulière, tu ne contrôle rien, si ce n'est juste une chaine de caractère.
    Va voir pour mieux comprendre les expressions régulières.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    foreach($lignes as $ligne_num => $ligne) { // on lit le fichier de façon séquentielle
         $array = explode('|', $ligne); // retire le séparateur
         if (preg_match(""#^A#"", $array[0])) {
              echo '<tr>';
              echo      '<td>'. $array[0] .'</td>';
              echo       '<td>' .$array[1] .'</td>';
              echo      '<td>'. $array[2] .'</td>';
              echo      '<td>'. $array[3] .'</td>';
              echo      '<td>'. $array[4] .'</td>';
              echo '</tr>';
        }
    }

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2010
    Messages
    79
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2010
    Messages : 79
    Par défaut
    Merci beaucoup kalimukti ! RESOLU !

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

Discussions similaires

  1. Expression regulière dans une requête
    Par questionneure dans le forum Requêtes
    Réponses: 1
    Dernier message: 02/09/2011, 16h43
  2. Expressions regulières dans Excel et VBA
    Par ghosty04 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 05/02/2009, 14h23
  3. Expressions Regulières dans ENCLOSED BY
    Par rcodtor dans le forum SQL*Loader
    Réponses: 0
    Dernier message: 05/11/2008, 18h31
  4. expression regulière dans access
    Par Ludosjob dans le forum Access
    Réponses: 4
    Dernier message: 11/01/2007, 16h24
  5. ET dans une expression regulière
    Par kesako dans le forum Langage
    Réponses: 4
    Dernier message: 10/11/2005, 12h57

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