I am looking for a C++ class (or C function) that parses bibtex authors (of course a complete bibtex parser would also be good, but I can live without that).
I need to be able to pass in any legal bibtex list of authors and it returns given name (or initials), family name, dealing with anything "strange" such an 'van', hyphenated names, additions such as 'jr' etc.
In fact, I only need to be able to parse a single name as with (something like) boost I can easily split (in PHP terms explode) the names using ' and ' as a delimiter.
I keep thinking I am getting somewhere but the bibtex standard seems quite loose and things such as bibtex spirit seems incomplete and the many solutions around don't quite seem to do the job.
Can anybody point me to robust C/C++ bibtex parser?