Filtrer un fichier

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 : Filtrer un fichier

Re: Filtrer un fichier

par mgrade » 15 avr. 2016, 16:22

Ca fait donc une boucle while dans une boucle for toutes deux indexées sur le i ?

Re: Filtrer un fichier

par or 1 » 15 avr. 2016, 16:06

tu fais un while tant que le $i+n n'aboutit pas à la ligne que tu cherches.

Re: Filtrer un fichier

par mgrade » 15 avr. 2016, 16:03

Oui mais le nombre de ligne n'est pas constant apres le A1donc je ne le connnais pas à l'avance il faudrait pouvoir le stopper quand il rencontre un nouvel A1.

Re: Filtrer un fichier

par or 1 » 15 avr. 2016, 15:56

en utilisant un
for($i=0; $i < sizeof($content); $i++){
$ligne = $content[$i];
}
ainsi les lignes suivantes sont dans
$content[$i+1]
$content[$i+2]
...

Filtrer un fichier

par mgrade » 15 avr. 2016, 15:51

Bonjour,

Je dispose d'un fichier qui se présente sous cette forme :

A1 **** ****** AAAA *******
A2 **** ****** ************
-----
Ak ****** *****  **********

B1 **** ****** ****** *****
B2 **** ****** ************
-----
Bk ****** *****  **********

A1 **** ****** ABAA *******
A2 **** ****** ************
----
Ak ****** *****  **********

Je souhaite récupérer la ligne qui commence par A1 et qui contient la chaine AAAA ainsi que les chaines qui se trouvent en dessous jusqu'à la prochaine ligne A1. Si la ligne A1 ne contient pas la chaine AAAA alors elle doit être ignorée ainsi que les lignes qui se trouvent en dessous jusqu'à la prochaine ligne A1.

Pour l'instant j'ai écrit :
$content=file('fichier.txt');
foreach($content as $ligne){
           if(strstr($ligne,"A1") AND strstr($ligne,"AAAA")){
                          echo $ligne;
           }
          else {
          }
Je ne sais pas comment prendre en compte ou non les lignes suivantes si le if est ou non verifié

Merci de votre aide.