If you're ok with using an external library, then there is [pofutil] in the pof library which outputs a list of arguments when sent a [dollarg( message.

so, like:

[dollarg(
|
[pofutil]

You can then just use pd's list functions (list length, list split, etc) to pull that list apart and check its length, etc. 

[route symbol float] should do the last bit you wanted,