I thought I had done adequate research before making this post but it wasn't until I submitted that I found 'related questions' which already cover the topic. Is it a Lexer's Job to Parse Numbers and Strings? & Where should I draw the line between lexer and parser? sufficiently answer my question.
Apologies for the duplicate