I am writing a top-down parser in Perl for a simple grammar. I would
like to split on a change in a character set. Is there a way to split
the tokens based on a change of a character set (like changing from a /
\w+/ to /+/ or something like that.

Basically I want to be able to split var = var1 + var 2; into tokens
(var, =, var1, +, var2, ;). I could do this with split / / but I
would also like var=var1+var2; to split into the same tokens.

How can I parse these two and get the same thing?