so this is the first time i have used boost, and im getting a bunch of errors. i know it is this function because i compiled before writing it and it went fine
The getting-started page explains the steps required: http://clang.llvm.org/get_started.html
It's even possible on Windows (to some extent), though I don't recommend it unless you want to do some crazy stuff.
The type of Match[0].first is an iterator, std::string::substr takes size_t start position and size_t length.
If your Token class takes a std::string as it's second arg maybe you can pass it std::string(Match[0].first, Match[0].second)
That's pretty old, that version came out in 2011. Can you upgrade to something more recent?
I don't know if the old version is the issue, but it seems likely to me.