in reply to how do I use Posix isdigit function?

I would recommend using a regex instead. 'm/\d/' or a varient of that regex will get you what you need.

A regex is much more idiomatic and you can save the overhead of the POSIX module

UPDATE: From the docs
This is identical to the C function, except that it can apply to a single character or to a whole string. Consider using regular expressions and the /[[:isdigit:]]/ construct instead, or the /\d/ construct



grep
Unix - where you can throw the manual on the keyboard and get a command