regex et recherche de texte dans un fichier
Bonjour,
Cela fait un moment que je me prend la tête, alors je craque et vous demande un peu d'aide !:oops:
Je débute en php et j'ai déjà fait du perl. Donc pour ma requête - récupérer des données dans un texte - je me suis logiquement tournée vers les regex. Mais j'ai un souci, car j'ai l'impression que seules les fonctions type preg_match fonctionnent avec les regex, or elles me renvoient le nombre d'occurence sur ma ligne et non, le contenu trouvé.
Je m'explique. J'ai un fichier du type :
Code:
1 2 3 4 5 6 7 8 9 10 11 12
| NUMBER=1892
380.8000,1.400e+4
381.4000,1.400e+4
424.8000,7.701e+4
NUMBER=1893
381.4000,2.100e+4
424.8000,1.120e+5
425.0000,6.301e+4
425.4556,2.870e+5
426.0000,3.501e+4
426.4000,2.100e+4
426.7000,2.100e+4 |
Je veux récupérer le chiffre après "NUMBER=" et le premier chiffre avant la virgule, ainsi que le second, après la virgule.
Or je coince !
J'ai essayé plein de trucs dont le dernier :
Code:
1 2 3 4 5 6 7 8 9
| ...
$fc=file($stock2);
$stock3 = $stock1."\\".$content_dir.".txt";
$f=fopen($stock3,"w");
foreach ($fc as $line)
{
$char=strrchr($line,'/\d+/');
fputs($f,$char."\n");
} |
mais évidemment ça marche pas car strrchr ne comprend pas les regex... :cry:
Si je mets preg_match à la place de strrchr, il m'écrit un "1" pour chaque ligne lue...normal !:?
Est-ce qu'il existe une fonction qui me permette de récupérer le contenu d'une régex ? Je suppose que oui, mais laquelle ???
Merci beaucoup pour votre aide précieuse !