есть log-файл, где подряд идут строки по 5-10 разным шаблонам, примеры:
[15.01.2008 13:42:19.341] player 10002222 entered inn id=17, (39, 124)
[15.01.2008 14:22:25.982] player 123243546576 entered building id=24, (44, 128)
[15.01.2008 14:22:30.654] player 123243546576 left building
[15.01.2008 14:26:57.763] error found! 0x005573e0 -> 0x00557419
Задача:
Отловить две подряд идущие для конкретного player'а (т.е. между ними могут быть события для других player'ов) одинаковые строки:
[15.01.2008 13:42:19.341] player 10002222 entered inn id=17, (39, 124)
либо
[15.01.2008 13:42:19.341] player 10002222 entered building id=17, (39, 124)
И выцепить оттуда 10002222
Например:
[15.01.2008 13:42:19.654] player 10002222 entered inn id=17, (39, 124)
[15.01.2008 14:22:30.654] player 123243546576 left building
[15.01.2008 13:42:19.654] player 10002222 entered inn id=17, (39, 124)
Строчки выделенные жирным для player'а 10002222 идут подряд, несмотря на то, что между ними вклинилось событие другого player'а.
Программа\скрипт должна выцепить из этого входа 10002222
Понятно, что можно это сделать с помощью c\c++, но просто, во-первых, хочется изучить какой-нибудь новый язык, а во-вторых, хочется использовать инструмент для обработки текста.
Был бы очень благодаерен за советы и направления куда копать.