|
автор: reg_str (04.02.2006 в 12:59) |
|
| Всем привет!
Вот решил обратится к Вам за помощью!
Вообщем есть такой текст:
Версия сервера: 1.7.9
Uptime: 28 суток 6 часов 47 minutes 28 seconds
Создано игр: 1
Онлайн : 1
Чат каналов: 33
Аккаунтов : 236
|
Мне надо с помощью пхп вырезать в этом тексте : Uptime: X суток X часов X minutes X seconds, и вывести все тоже самое только без строки uptime!
При этом сутки, часы, минуты, секунды - могут менятся!
Я так понимаю, что надо пробежать рег. выражением и удалить все начиная от Версия сервера: 1.7.9 и заканчивая на Создано игр.
Никак не пойму как сделать! | |
|
|
|
|
|
|
|
для: reg_str
(04.02.2006 в 12:59)
| | А этот текст записан в файле?
Если да, и строки расположенны именно так, то проще считать из файла инфу функцией file()
И выбросить второй элемент массива, полученного из функции.
Если нет, тогда придумаем как пропарсить | |
|
|
|
|
|
|
|
для: reg_str
(04.02.2006 в 12:59)
| | Можно воспользоваться регулярным выражением
<?php
$text = "Версия сервера: 1.7.9
Uptime: 28 суток 6 часов 47 minutes 28 seconds
Создано игр: 1
Онлайн : 1
Чат каналов: 33
Аккаунтов : 236";
$pattern = "|uptime[\s]*:[\s]*([\d]+)[\s]*суток[\s]*([\d]+)[\s]*часов[\s]*([\d]+)[\s]*minutes[\s]*([\d]+)[\s]*|i";
preg_match($pattern, $text, $out);
echo $out[1]." суток ".$out[2]." часов ".$out[3]." минут ".$out[4]." секунд";
?>
|
| |
|
|
|
|
автор: reg_str (04.02.2006 в 14:16) |
|
|
для: cheops
(04.02.2006 в 13:21)
| | Вы наверняка меня неправильно поняли)
Мне надо вывести все кроме : Uptime: 28 суток 6 часов 47 minutes 28 seconds . | |
|
|
|
|
|
|
|
для: reg_str
(04.02.2006 в 12:59)
| |
<?php
$pattern = "Uptime: [0-9]{1,2} суток [0-9]{1,2} часов [0-9]{1,2} minutes [0-9]{1,2} seconds";
$str = "Версия сервера: 1.7.9
Uptime: 28 суток 6 часов 47 minutes 28 seconds
Создано игр: 1
Онлайн : 1
Чат каналов: 33
Аккаунтов : 236";
$str = ereg_replace($pattern, "", $str);
echo $str;
?>
|
| |
|
|
|
|
автор: reg_str (04.02.2006 в 20:54) |
|
|
для: PantiL
(04.02.2006 в 16:15)
| | Спасибо!
Помогло | |
|
|
|