Автор Тема: Работа со строками  (Прочитано 2929 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн alezee

  • Завсегдатай
  • Новичок
  • *
  • Сообщений: 42
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
Работа со строками
« : 15 Декабря 2003, 20:19:00 »
Собственно, имею фал типа:
Цитировать

                         РАСШИФРОВКА УСЛУГ

        Лицевой счёт 2485
    Расчётный период Ноябрь   2003
      Имя/Название    

    Входящий остаток -30255.90
   Исходящий остаток -2957.08
   Постоянные услуги
   Название услуги                   Количество                      Сумма
   700 Аренда телефонного канала          2.794                    1783.69
   701 Тех.обслуживание кабеля            2.938                     729.80
   8001 Основной телефон                      2                     336.00
   8006 Ведомственный телефон                35                       0.00
   (поток)
   8008 Основной телефон договорной           7                    1176.00
   8022 Прямой провод к цифровому             1                       0.00
   потоку
   8049 Абонем. плата за аренду               1                   16320.00
   цифр.кан.2048 Кбит/с(без модема)
   8106 Модем                                 2                       0.00
   8107 Факс                                  1                       0.00
                                                   Итого:         20345.49

   Разовые услуги
   № док.  Дата      Название услуги (Телефон/Начало сеанса/Дл       Сумма
   600     30.11.01  625 Доступ к Интернет                           27.32
                     поврем.сист.опл.1мин. 8.00-19.00
                                                   Итого:            27.32

   МТР
   в том числе:
   А-автоматика З-заказная М-международный (М/Н) С-срочный Э-экспресс
   Переговоры по телефону 238244

  МН Код       Город           Выз тел        Дата:время  Длит        Cумма
                                                                  по тарифу
  А  265       Кармаскалы     26522086        01.11 08:15 3            3.60
  А  213       Нефтекамск     21324236        03.11 09:45 1            4.20
  А  353       ОРЕНБУРГ       3532733660      03.11 12:30 7           29.40
  А  213       Нефтекамск     21324236        03.11 15:43 2            8.40
  А  262       Верхнеяркеево  26245140        04.11 10:56 3           12.60
  А  213       Нефтекамск     21350203        04.11 15:22 1            4.20
  А  353       ОРЕНБУРГ       3532733660      05.11 08:57 3           12.60
  А  212       Туймазы        21241442        05.11 12:06 4           16.80
  А  212       Туймазы        21241527        05.11 17:26 1            4.20
  З  257       Ермолаево      25791662        06.11 08:54 0            4.20


Необходимо получить на выходе только строки с данными о переговорах. Заранее не известно, какая шапка будет.
Подайте мысль какую нить...
Заранее Тхенкс.

Оффлайн Phoinix

  • RW
  • Ветеран
  • *****
  • Сообщений: 1097
  • +0/-0
  • 2
    • Просмотр профиля
    • http://phoinix.ucoz.ru
Работа со строками
« Ответ #1 : 15 Декабря 2003, 20:24:13 »
alezee
Есть соответствующий форум Теория, алгоритмы и стандарты

Я бы прыгал от шапки, от шапки непосредственно таблицы...

Цитировать
МН Код Город Выз тел Дата:время Длит Cумма
по тарифу

Сомневаюсь, что она может менятся... к ней и привязывайся...

Оффлайн alezee

  • Завсегдатай
  • Новичок
  • *
  • Сообщений: 42
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
Работа со строками
« Ответ #2 : 15 Декабря 2003, 20:34:11 »
Пнятно... спасибо..

Оффлайн Меняздесьдавнонет

  • новичЕк
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 5698
  • +0/-0
  • 2
    • Просмотр профиля
    • http://
Работа со строками
« Ответ #3 : 15 Декабря 2003, 21:20:21 »
$pattern=\'#\\n. \\d{3} \\D+\\d+ \\d{2}\\.\\d{2} \\d{2}:\\d{2} \\d+ \\d+\\.\\d+#\';
preg_match_all($pattern,$log,$m);
foreach($m[0] as $w) echo $w,"
";


Но это, конечно, из пушки по воробьям.
А проще будет, действительно, найти позицию шапки и от нее jотрезать
strpos+substr
зависит от задачи, в общем.

 

Sitemap 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28