my $equation = '979x + 87y - 8723z = 274320'; my $vars = 'xyz'; my $operators = qr/[-+*\/%=]/; my @parts = $equation =~ /([^\s$vars]+|[$vars]|$operators)/g;