Most languages can do most things, so you should pick the one(s) you know best.
That said traditionally perl would be the choice for parsing, and it is still a good candidate. For simple extraction - think "programatic grep" - then awk is also a good choice.
I've found for down and dirty parsing, you can almost always parse simple log/structured output using operations like `split`, `substring`, `prefix`, and `suffix` where :
- `split` splits a string at an index or into substrings separated by a pattern
- `substring` takes a substring of a string for a range of indices
- `prefix` returns true if the start of the string matches a pattern, false otherwise
- `suffix` returns true if the end of the string matches a pattern, false otherwise
Python and C++ both have good standard library functions for these tasks. What's less important than a language for your parser is a language to plug the output into to make something useful.
Unless the game logs are in json or xml, the easiest language to get started in (assuming a few regexs isn't enough) is whatever language you know, that has a good packrat parser library.
Anything with parser combinators or PEG support. I had to learn PEG parsing for a project when I was a kid, and that has been one of my most useful skills.
That said traditionally perl would be the choice for parsing, and it is still a good candidate. For simple extraction - think "programatic grep" - then awk is also a good choice.