|
|
|
| имеется файл в котором есть такие строки
SCORE=10,1,0
TYPE=34
FLAG=2
NAME=sol] [Ch
нужно вырезать из этой строки "SCORE=10,1,0" первое число, т.е. 10
но по скольку таких строк может быть много, то сперва
надо найти эту строчку "NAME=sol] [Ch" (т.к. она один раз повторяеться в файле)
и от этой строки уже подняться на пару строк выше и вырезать нужное первое число | |
|
|
|
|
|
|
|
для: xexe
(19.03.2006 в 18:46)
| | Под вырезанием что имеется ввиду: удаление из файла или получение значения в переменную? | |
|
|
|
|
|
|
|
для: cheops
(19.03.2006 в 20:54)
| | получения значения в переменную | |
|
|
|
|
|
|
|
для: xexe
(19.03.2006 в 22:57)
| |
<?
$file = file_get_contents("file.txt");
preg_match("|RE=([0-9]+)|i",$file,$score);
echo $score[1];
?>
|
| |
|
|
|
|
|
|
|
для: Евгений Петров
(19.03.2006 в 23:27)
| | спасибо только тут он берет первое, что встретиться на SCORE=10,1,0
а таких строчек может быть не сколько, а нужна строчка может находиться где угодно в файле, но обязательно перед
TYPE=34
FLAG=2
NAME=sol] [Ch | |
|
|
|
|
|
|
|
для: xexe
(20.03.2006 в 00:33)
| | Тогда что то типа такого:
<?
$file = file_get_contents("file.txt");
preg_match("|RE=([0-9]+),[^S]+NAME|iU",$file,$score);
echo $score[1];
?>
|
| |
|
|
|
|
|
|
|
для: Евгений Петров
(20.03.2006 в 00:54)
| | сенка =)
а что означает в скрипте вот это [^S]+NAME|iU
и как сделать, чтобы выводило не только 10, а еще "sol] [Ch=10"
и не только первую строку начинающюся на "NAME=", а все такие строки
ну т.е. вот файл
SCORE=10,1,0
TYPE=34
FLAG=2
NAME=sol] [Ch
bla bla bla
sdsadasd
SCORE=3,1,0
TYPE=34
FLAG=2
NAME=asdf] [or
|
должны получить такое
sol] [Ch =10
asdf] [or =3 | |
|
|
|