Précédent   Forum des professionnels en informatique > PHP > Langage > Regex
Regex Forum d'entraide sur les expressions rationnelles PHP. Avant de poster -> FAQ regex, Cours de regex et Sources de regex
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 27/09/2007, 15h30   #1
Invité régulier
 
Inscription : janvier 2007
Messages : 46
Détails du profil
Informations forums :
Inscription : janvier 2007
Messages : 46
Points : 6
Points : 6
Par défaut suppression des lignes

salut à tous

j'ai crée un script PHP pour la lecture ligne par ligne d'un fichier texte, j'ai voulu modifier quelques lignes dans une autre copie (fichier texte) pour les insérer ensuite dans une base de donnée. j'ai utilisé alors les expression régulières.
mais j'ai du mal à enlever des lignes dont je n'ai pas besoin.
voici mon fichier texte et les lignes dont je veux supprimer qui sont soulignés, je ne sais pas quoi écrire!!

Citation:
================================================================================
PATH Circuit-Test-9004-9015B-STM6-2
================================================================================

***** MAIN ROUTE *******

SFX-9015-B/r01s1b05p010c1
SFX-9015-B/r01s1b15p006 01/1/1.2
SOS-9004/r01s1b15p009 01/1/1.2
SOS-9004/r01s1b03p018c1

================================================================================
PATH *3040*
================================================================================

***** MAIN ROUTE *******

SFX-9015/r01s1b07p010c1
SFX-9015/r01s1b04p001 01/1/1.3
SFX-9016/r01s1b01p02 01/1/1.3
SFX-9016/r01s1b02p01c01

***** SPARE ROUTE *******

SFX-9015/r01s1b07p010c1
SFX-9015/r01s1b04p002 01/1/7.1
SFX-9028/r01s1b01p01 01/1/7.1
SFX-9028/r01s1b01p02 01/1/3.1
SFX-9016/r01s1b01p01 01/1/3.1
SFX-9016/r01s1b02p01c01

================================================================================
PATH Abis BAR_1017
================================================================================

***** MAIN ROUTE *******

TUN-9001/r01s1b02p16c01
TUN-9001/r01s1b01p02 01/3/1.1
TUN-9043/r01s1b15p005 01/3/1.1
TUN-9043/r01s1b03p016c1

***** SPARE ROUTE *******

TUN-9001/r01s1b02p16c01
TUN-9001/r01s1b01p01 01/1/5.2
TUN-9043/r01s1b15p006 01/1/5.2
TUN-9043/r01s1b03p016c1
j'ai utilisé ça mais ça n'a pas marché :

Code :
if (preg_match("#\**\s*\n\n[A-Z0-9]+(-[BCD])*-[0-9]+/[0-9]+c+[0-9]+#",$donnee[$i])){$donnee[$i]=preg_replace("#\**\s*\n\n[A-Z0-9]+(-[BCD])*-[0-9]+/[0-9]+c+[0-9]+#","....",$donnee[$i]);}
ou bien je ne sais pas s'il existe une autre méthode pour supprimer le 1er et le 2ème ligne de chaque rubrique (Main route, spare route).
Merci
Medmidou est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/10/2007, 18h33   #2
Membre chevronné
 
Inscription : mars 2002
Messages : 611
Détails du profil
Informations personnelles :
Âge : 48
Localisation : France, Var (Provence Alpes Côte d'Azur)

Informations forums :
Inscription : mars 2002
Messages : 611
Points : 764
Points : 764
Vu, d'après ce que j'ai compris, que ce sont les premières et dernières ligne d'un bloc, pourquoi chercher à utiliser une regex.

Tu parcours ton fichier ligne par ligne, tu testes si tu trouves ta signature:

***** MAIN ROUTE ******* ou ***** SPARE ROUTE *******

tu stockes dans un tableau tout ce qu'il y a entre les deux et tu réutilises toutes les lignes de ton tableau sauf la première et la dernière.
DelphiManiac est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 06h03.


 
 
 
 
Partenaires

Hébergement Web