Форум АНТИЧАТ

Форум АНТИЧАТ (https://forum.antichat.xyz/index.php)
-   PHP, PERL, MySQL, JavaScript (https://forum.antichat.xyz/forumdisplay.php?f=37)
-   -   Помогите с парсером [Perl] (https://forum.antichat.xyz/showthread.php?t=106471)

$p01nt 16.02.2009 14:08

Помогите с парсером [Perl]
 
Ребят как реализовать парсинг логов вида:

Цитата:

COUNTRY: RU
Немного левого текста
Login=stopped
Password=666666

COUNTRY: EN
Немного левого текста
Login=dxgfhd
Password=5455555
Нужно вытащить логин и пароль, регулярку я знаю Login=(.*);
и Password=(.*)
а как обработать хз...

demond 16.02.2009 14:17

Читаешь из файла построчно. каждую строчку проверяешь на регуляное выражение /^Password=(.*)$/ и /^Login=(.*)$/
Код:

@tests = ("asdfasfd","asdfasdf","Password=sdfa111sdf","Login=sdfasdf");
foreach(@tests)
{
  $res=$1 if ($_=~/^Password=(.*)$/);
}
    print $res;

Только место @tests массив со строками файла.
Если надо больше конкретики, давай код, поможем его поравить. :-) Хотя куда уж больше!

Kaimi 16.02.2009 15:23

Код:

$/ = undef;
open F, "<", "log.txt" || die $!;
$data = <F>;
close F;

while($data =~ /Login=(.{1,30})\nPassword=(.{1,30})\n/g)
{
print $1.":".$2."\n";
}



Время: 06:19