Вход:Как я могу форматировать каждую строку при чтении файла? Формат
2014-09-21 00:09:22,718 TRACE [user: admin12] common.Log (PerformanceExtractor.Python:9776) - ClientId:895,UserId:258,Ip:111.1.1.1,DurationMls:23,DurationString:0.023 seconds,Url:Calculate.LoanExmple
Мой выход был бы в переменные; например:
$date = 2014-09-21 00:09:22,718 $user = admin12 $ClientId= 895 $UserID=258 $ip = 111.1.1.1 $time=0.023 $url=Calculate.LoanExmple
В JAVA Я бы занялся этим, используя цикл, объект Stream и регулярное выражение. Я не знаю, как это сделать с помощью Perl. Я также добавлю эту переменную в виде столбца в базу данных, и линия будет составлять как минимум 3000 макс. 5000 каждый раз, когда я запустим .pl.
мой цикл
{
print $line;
--formatting here?
last if $. == 500;
}
Это просто выводит строку, как описано выше, - я полагаю, что лучшим решением было бы отформатировать его и получить значения в переменные, читая каждую строку, готовый для вставки в БД с Библиотеки DBI.
любые предложения?
Вы хотите форматировать строки (то есть напечатать их каким-то образом), или вы хотите, чтобы * разобрать * строки - извлечь данные в переменных, а затем сохранить его? –