|
|
|
| Есть строки:
L 06/18/2008 - 14:16:05: "Skill__exzon (-.-)<6><STEAM_ID_LAN><TERRORIST>" say "h1"
L 06/18/2008 - 14:18:44: "tea4me?!<11><STEAM_ID_LAN><CT>" say "/rank" (dead)
L 06/18/2008 - 14:18:46: "tea4me?!<11><STEAM_ID_LAN><CT>" say "/top15" (dead)
L 06/18/2008 - 14:21:09: "Skill__exzon (-.-)<6><STEAM_ID_LAN><TERRORIST>" say "bl9" (dead)
L 06/18/2008 - 14:21:32: "Skill__exzon (-.-)<6><STEAM_ID_LAN><TERRORIST>" say "tbI pini pini"
L 06/18/2008 - 14:21:35: "tea4me?!<11><STEAM_ID_LAN><CT>" say "noi"
L 06/18/2008 - 14:21:38: "tea4me?!<11><STEAM_ID_LAN><CT>" say "no*"
L 06/18/2008 - 14:21:41: "tea4me?!<11><STEAM_ID_LAN><CT>" say "ya 2 gl admin"
L 06/18/2008 - 14:21:54: "Skill__exzon (-.-)<6><STEAM_ID_LAN><TERRORIST>" say "a"
L 06/18/2008 - 14:23:17: "Skill__exzon (-.-)<6><STEAM_ID_LAN><TERRORIST>" say "mono adminky?"
L 06/18/2008 - 14:23:17: "tea4me?!<11><STEAM_ID_LAN><CT>" say "nowi"
L 06/18/2008 - 14:23:24: "tea4me?!<11><STEAM_ID_LAN><CT>" say "da zayavky podai na saite"
L 06/18/2008 - 14:23:26: "tea4me?!<11><STEAM_ID_LAN><CT>" say "mi rassmotrim"
L 06/18/2008 - 14:23:44: "Skill__exzon (-.-)<6><STEAM_ID_LAN><TERRORIST>" say "a bez 3a9vku"
L 06/18/2008 - 14:23:54: "Skill__exzon (-.-)<6><STEAM_ID_LAN><TERRORIST>" say "pliz"
L 06/18/2008 - 14:23:54: "tea4me?!<11><STEAM_ID_LAN><CT>" say "bez zayavki nikak )"
L 06/18/2008 - 14:23:59: "Skill__exzon (-.-)<6><STEAM_ID_LAN><TERRORIST>" say "ny"
L 06/18/2008 - 14:24:00: "tea4me?!<11><STEAM_ID_LAN><CT>" say "da tam prosto vse )"
L 06/18/2008 - 14:25:15: "tea4me?!<11><STEAM_ID_LAN><CT>" say ":D" (dead)
L 06/18/2008 - 14:25:22: "tea4me?!<11><STEAM_ID_LAN><CT>" say "otxodil"
L 06/18/2008 - 14:25:22: "Skill__exzon (-.-)<6><STEAM_ID_LAN><TERRORIST>" say "/top15"
L 06/18/2008 - 14:25:26: "tea4me?!<11><STEAM_ID_LAN><CT>" say "/rank"
L 06/18/2008 - 14:25:58: "Skill__exzon (-.-)<6><STEAM_ID_LAN><TERRORIST>" say "udau saut"
L 06/18/2008 - 14:26:28: "tea4me?!<11><STEAM_ID_LAN><TERRORIST>" say "/top15"
L 06/18/2008 - 14:31:14: "Skill__exzon (-.-)<15><STEAM_ID_LAN><TERRORIST>" say "/top15"
L 06/18/2008 - 14:38:59: "MEHT VFR400 NC24<20><STEAM_ID_LAN><CT>" say "only a! OK?"
L 06/18/2008 - 14:40:34: "MEHT VFR400 NC24<20><STEAM_ID_LAN><CT>" say "4it"
L 06/18/2008 - 14:42:41: "MEHT VFR400 NC24<20><STEAM_ID_LAN><CT>" say "ubl,/sa" (dead)
L 06/18/2008 - 14:42:44: "MEHT VFR400 NC24<20><STEAM_ID_LAN><CT>" say " 9 Hy6676" (dead)
L 06/18/2008 - 14:43:42: "MEHT VFR400 NC24<20><STEAM_ID_LAN><CT>" say "hY x3" (dead)
L 06/18/2008 - 14:44:19: "MEHT VFR400 NC24<20><STEAM_ID_LAN><CT>" say "Onky A!!!!!"
L 06/18/2008 - 14:45:43: "pini-pini<37><STEAM_ID_LAN><SPECTATOR>" say "IDET NABOR ADMINOV NA ETOT SERVER! Podrobnosti na www.PP-GS.net"
L 06/18/2008 - 14:46:28: "MEHT VFR400 NC24<20><STEAM_ID_LAN><CT>" say "b,lal" (dead)
L 06/18/2008 - 14:46:33: "MEHT VFR400 NC24<20><STEAM_ID_LAN><CT>" say "Mmudak.."
L 06/18/2008 - 14:48:34: "MEHT VFR400 NC24<20><STEAM_ID_LAN><CT>" say "blsa"
L 06/18/2008 - 14:48:37: "MEHT VFR400 NC24<20><STEAM_ID_LAN><CT>" say "ppc"
L 06/18/2008 - 14:48:40: "unnamed<44><STEAM_ID_LAN><CT>" say "boom" (dead)
L 06/18/2008 - 14:48:43: "MEHT VFR400 NC24<20><STEAM_ID_LAN><CT>" say "cyka" (dead)
L 06/18/2008 - 14:50:04: "MEHT VFR400 NC24<20><STEAM_ID_LAN><CT>" say "cyka" (dead)
L 06/18/2008 - 14:50:19: "MEHT VFR400 NC24<20><STEAM_ID_LAN><CT>" say "hetttt!'"
L 06/18/2008 - 14:50:23: "MEHT VFR400 NC24<20><STEAM_ID_LAN><CT>" say "tHE byka"
L 06/18/2008 - 14:50:24: "tea4me?!<46><STEAM_ID_LAN><TERRORIST>" say "da vot takoe"
L 06/18/2008 - 14:50:32: "tea4me?!<46><STEAM_ID_LAN><TERRORIST>" say "toko 4tobi samo "
L 06/18/2008 - 14:50:48: "MEHT VFR400 NC24<20><STEAM_ID_LAN><CT>" say "ppc" (dead)
L 06/18/2008 - 14:50:51: "MEHT VFR400 NC24<20><STEAM_ID_LAN><CT>" say "}|{ECTb"
L 06/18/2008 - 14:51:13: "MEHT VFR400 NC24<20><STEAM_ID_LAN><CT>" say "ga HY hA!" (dead)
L 06/18/2008 - 14:51:16: "MEHT VFR400 NC24<20><STEAM_ID_LAN><CT>" say "ppx" (dead)
L 06/18/2008 - 14:51:32: "tea4me?!<46><STEAM_ID_LAN><CT>" say "/rank"
L 06/18/2008 - 14:52:10: "MEHT VFR400 NC24<20><STEAM_ID_LAN><CT>" say "ppc" (dead)
L 06/18/2008 - 14:52:57: "MEHT VFR400 NC24<20><STEAM_ID_LAN><CT>" say "bkla" (dead)
L 06/18/2008 - 14:53:18: "MEHT VFR400 NC24<20><STEAM_ID_LAN><CT>" say "bla" (dead)
L 06/18/2008 - 14:53:31: "MEHT VFR400 NC24<20><STEAM_ID_LAN><CT>" say "Hga((" (dead)
L 06/18/2008 - 14:53:40: "tea4me?!<46><STEAM_ID_LAN><CT>" say "bla"
L 06/18/2008 - 14:53:44: "tea4me?!<46><STEAM_ID_LAN><CT>" say "Roma"
L 06/18/2008 - 14:53:57: "tea4me?!<46><STEAM_ID_LAN><CT>" say "eta xren' vse ewe y menya na pricele"
L 06/18/2008 - 14:55:06: "MEHT VFR400 NC24<20><STEAM_ID_LAN><CT>" say "bla" (dead)
L 06/18/2008 - 14:55:08: "MEHT VFR400 NC24<20><STEAM_ID_LAN><CT>" say "cyka" (dead)
L 06/18/2008 - 14:55:11: "tea4me?!<46><STEAM_ID_LAN><CT>" say "/rank" (dead)
L 06/18/2008 - 14:55:12: "tea4me?!<46><STEAM_ID_LAN><CT>" say "/top15" (dead)
L 06/18/2008 - 14:57:43: "<<ArTuR AbRaHaM>><31><STEAM_ID_LAN><CT>" say "soorry"
L 06/18/2008 - 14:59:43: "tea4me?!<46><STEAM_ID_LAN><CT>" say "/rank" (dead)
L 06/18/2008 - 14:59:46: "tea4me?!<46><STEAM_ID_LAN><CT>" say "/hp" (dead)
L 06/18/2008 - 15:00:26: "Ghost<55><STEAM_ID_LAN><TERRORIST>" say "stavte bombu`" (dead)
L 06/18/2008 - 15:00:34: "tea4me?!<46><STEAM_ID_LAN><CT>" say "timeleft"
L 06/18/2008 - 15:01:50: "tea4me?!<46><STEAM_ID_LAN><CT>" say "/hp" (dead)
L 06/18/2008 - 15:01:53: "tea4me?!<46><STEAM_ID_LAN><CT>" say "/rank" (dead)
L 06/18/2008 - 15:01:55: "tea4me?!<46><STEAM_ID_LAN><CT>" say "/top15" (dead)
L 06/18/2008 - 15:02:11: "Fic.ti.ON<52><STEAM_ID_LAN><TERRORIST>" say "e6aHa9l MblwKA!!!" (dead)
L 06/18/2008 - 15:02:55: "Fic.ti.ON<52><STEAM_ID_LAN><TERRORIST>" say "suka loh" (dead)
L 06/18/2008 - 15:04:04: "Fic.ti.ON<52><STEAM_ID_LAN><TERRORIST>" say "haha" (dead)
L 06/18/2008 - 15:05:06: "la spoze<59><STEAM_ID_LAN><CT>" say "pini tit?" (dead)
L 06/18/2008 - 15:05:08: "la spoze<59><STEAM_ID_LAN><CT>" say "tut?" (dead)
L 06/18/2008 - 15:05:12: "pini-pini<53><STEAM_ID_LAN><SPECTATOR>" say "da"
L 06/18/2008 - 15:05:16: "la spoze<59><STEAM_ID_LAN><CT>" say "on 4iteril ?" (dead)
L 06/18/2008 - 15:05:25: "la spoze<59><STEAM_ID_LAN><CT>" say "tuomas" (dead)
L 06/18/2008 - 15:05:35: "pini-pini<53><STEAM_ID_LAN><SPECTATOR>" say "vrode net"
|
Из них надо получить только подстроки, вида: "vrode net", "tuomas" и т.д.
PS: на PHP+PCRE
PSS: это для антиматника, если кто-то хочет помочь в составлении - прошу
PSSS: логи с моего сервера :) | |
|
|
|
|
|
|
|
для: pini-pini
(19.07.2008 в 15:19)
| |
<?php
$logs = <<<logstream
L 06/18/2008 - 14:16:05: "Skill__exzon (-.-)<6><STEAM_ID_LAN><TERRORIST>" say "h1"
L 06/18/2008 - 14:18:44: "tea4me?!<11><STEAM_ID_LAN><CT>" say "/rank" (dead)
...
L 06/18/2008 - 15:05:25: "la spoze<59><STEAM_ID_LAN><CT>" say "tuomas" (dead)
L 06/18/2008 - 15:05:35: "pini-pini<53><STEAM_ID_LAN><SPECTATOR>" say "vrode net"
logstream;
//echo $logs;
$pattern = '#'
. '^ L'
. ' \s ([\d]{2}/[\d]{2}/[\d]{4}\s-\s[\d]{2}:[\d]{2}:[\d]{2}):'
. ' \s "([^<]+)'
. '<([\d]+)>'
. '<([^>]+)>'
. '<([^>]+)>"'
. ' \s say \s '
. '"(.+)"'
. '(\s\(dead\))?'
// . ' $'
. ' #x';
$p = explode("\r\n", $logs);
$out = array();
foreach($p as $v)
{
preg_match($pattern, $v, $m);
unset($m[0]);
$out[] = $m;
}
echo '<pre>';
print_r($out);
?>
|
| |
|
|
|
|
|
|
|
для: Trianon
(19.07.2008 в 16:25)
| | Спасибо, сработало!
Осталось всего-лиш собрать словарик и написать на AMXX плагин для работы с ним :) | |
|
|
|
|
|
|
|
для: pini-pini
(19.07.2008 в 16:40)
| | не всё так просто.
Я, например, не представляю, как будет выглядеть лог, если в нем встретятся уголки в нике или кавычки в репликах, но точно знаю, что такие строки нормально не распарсятся. | |
|
|
|