05-04-2012, 03:46 PM
Парсер xml'ки
|
05-04-2012, 03:54 PM
в аттаче) ток там .rar Архив, если не откроется, переименуйте
consulo.io - Consulo - multi-language IDE
Благодарствую 307 строк выдает за 240 сек. это Т_Т
Добавлено через 1 час 17 минут PHP код:
05-05-2012, 09:08 AM
не стоит каждый раз бегать по контейнеру с именами чтобы идентифицировать объект, достаточно сложить все при загрузке в массив (как я говорил ранее) и дергать данные из него.
P.S. не забываем unset'ы после циклов
for(;Forum.getPostCount() < Integer.MAX_VALUE; Forum.writeNewPost()); | TERA Video | GamezTERA Emu
05-05-2012, 01:17 PM
эхх поколение пехепистов
[src=perl] #!/usr/bin/perl use strict; my($npcId, $gchance); open(FH,"<npc.xml") or die "$!\n"; while(<FH>) { my $str = $_; if($str =~/npc id="(\d+)"/) { $npcId = $1; } elsif($str =~/group chance="(.+?)"/) { $gchance = $1; } elsif($str =~/\<reward\s+item_id="(\d+)" min="(\d+)" max="(\d+)" chance="(.+?)".+?\<\!--(.+?)--\>/) { print "$npcId\t$5 $2-$3 [$gchance * 100 / $4]\n"; } } close(FH); [/src] И работать будет явно побыстрее...
05-05-2012, 04:33 PM
rage Написал:эхх поколение пехепистов у меня ещё в PATH кроме php python стоит, так что временами скрипты мелкие и на нем выполняю =)
for(;Forum.getPostCount() < Integer.MAX_VALUE; Forum.writeNewPost()); | TERA Video | GamezTERA Emu
05-05-2012, 05:11 PM
rage Написал:эхх поколение пехепистовС пхп хоть немного сталкивался, да и он ближе к си, который я учил не много...
05-05-2012, 05:41 PM
rage Написал:эхх поколение пехепистов [src=php] $data = explode("\n", file_get_contents('npc.xml')); foreach ($data as $row) { if (preg_match('/npc id\="(\d+)"/', $row, $match)) $npcId = (int)$match[1]; else if (preg_match('/group chance="(.+?)"/', $row, $match)) $groupChance = $match[1]; else if (preg_match('/\<reward\s+item_id="(\d+)" min="(\d+)" max="(\d+)" chance="(.+?)".+?\<\!--(.+?)--\>/', $row, $match)) echo $npcId . "\t" . $match[1] . "\t" . $match[2] . '-' . $match[3] . "\t" . $match[4] . "\t" . $match[5] . "\n"; } [/src] Работать будет никак не медленнее Perl'а. Это не поколение пехепистов, а тех, кто не умеет быстро решать поставленные задачи
// aka Deft
05-05-2012, 05:43 PM
У каждого языка есть своя область применения где этот язык наиболее удобен. Perl как раз для подобных задач и был создан, по этому и решение на перле короче и быстрее, чем на пхп.
|
« Предыдущая | Следующая »
|
Пользователи, просматривающие эту тему: 1 Гость(ей)