![]() |
|
Модераторы: korob2001, ginnie |
![]()
|
|
| study |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 126 Регистрация: 20.9.2004 Репутация: нет Всего: нет |
Народ подскажите регулярное выражение для такой строки: "Суммарный трафик: 550504", т.е. строка символов пробел число.
|
|||
|
||||
| HalkaR |
|
|||
![]() Пуфыстый назгул ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 2132 Регистрация: 8.12.2002 Где: В Москве Репутация: нет Всего: 42 |
коли не глючу |
|||
|
||||
| Secandr |
|
|||
|
Связист ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 4043 Регистрация: 3.8.2003 Где: Russia, Volgograd Репутация: 1 Всего: 39 |
Если нужны только цифры, то достаточно:
|
|||
|
||||
| study |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 126 Регистрация: 20.9.2004 Репутация: нет Всего: нет |
а как мне разбить вот такую вот строку:"10.41.89.10 \t 10.41.90.5 \t 2004.12.22 10:07 \t 60" из неё надо извлечь только последнее значение, число и время, т.е. 2004.12.22 10:07 и 60, \t - табуляция
Это сообщение отредактировал(а) study - 13.1.2005, 13:10 |
|||
|
||||
| Secandr |
|
|||
|
Связист ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 4043 Регистрация: 3.8.2003 Где: Russia, Volgograd Репутация: 1 Всего: 39 |
а чем тебе split не нравится.
Это сообщение отредактировал(а) Secandr - 13.1.2005, 13:23 |
|||
|
||||
| study |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 126 Регистрация: 20.9.2004 Репутация: нет Всего: нет |
а что быстрее будет, split или регулярное выражение, файл большой, время - мало
|
|||
|
||||
| HalkaR |
|
|||
![]() Пуфыстый назгул ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 2132 Регистрация: 8.12.2002 Где: В Москве Репутация: нет Всего: 42 |
Собственно split и реализует регулярное выражение, просто в более удобной обертке. Но в твоем случае наверно лечше регулярка.
|
|||
|
||||
| study |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 126 Регистрация: 20.9.2004 Репутация: нет Всего: нет |
Подскажите плз регулярное выражение для вот этой сторчки, что-то у меня не получаеться
"10.41.89.10 \t 10.41.90.5 \t 2004.12.22 10:07 \t 60", я делаю так
может ошибся Добавлено @ 14:55 мне нужно из файла выбрать строчки, у которых определённое время, например, 10:07 |
|||
|
||||
| chaos |
|
||||||
![]() Серийный программист ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2979 Регистрация: 7.7.2004 Где: Екатеринбург Репутация: 6 Всего: 44 |
Для твоего примера
|
||||||
|
|||||||
| study |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 126 Регистрация: 20.9.2004 Репутация: нет Всего: нет |
Привет chaos, а как мне получить значение 60 из этой строки (последнее значение) для определённой даты?
строка "10.41.89.10 \t 10.41.90.5 \t 2004.12.22 10:07 \t 60", |
|||
|
||||
| chaos |
|
||||
![]() Серийный программист ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2979 Регистрация: 7.7.2004 Где: Екатеринбург Репутация: 6 Всего: 44 |
Если хочешь отбирать по дате и последнему числу то тебе подойдет следующее:
|
||||
|
|||||
| study |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 126 Регистрация: 20.9.2004 Репутация: нет Всего: нет |
нет, chaos, мне надо по дате 2004.12.22 10:07, получить число 60, т.е. из строки в которой имееться соответствующая дата, точнее время, получить значение, последнего столбца.
Спасибо большое за помощь. |
|||
|
||||
| chaos |
|
||||
![]() Серийный программист ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2979 Регистрация: 7.7.2004 Где: Екатеринбург Репутация: 6 Всего: 44 |
Тогда так:
Это сообщение отредактировал(а) chaos - 14.1.2005, 11:06 |
||||
|
|||||
| study |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 126 Регистрация: 20.9.2004 Репутация: нет Всего: нет |
Спасибо сейчас попробую.
|
|||
|
||||
| dimes |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 249 Регистрация: 20.7.2004 Где: то около СПБ Репутация: нет Всего: 14 |
Что это? Если ты сможеш объяснить формат построение таких строк мы сможеш тебе правильно помочь а пока... если cтрока не очень большая, дата и значение стоит в указанном порядке в конце строки, то возможно проще зделать так: my ($_value,$_date)=revece split("\t",$str); |
|||
|
||||
![]()
|
| Правила форума "Perl" | |
|
|
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, korob2001, sharq. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Perl: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |