Depends if you want $z to be 0.23 or just 23, and also depends if you want proper numbers that can be mathematically combined to re-produce original, e.g. $x = -2.23, $y = -2.0, $z = -0.23. If this is the case, or if it's even more complicated, by having to carry proper precision e.g. -2.00, then regexes would work best.
if you only care about positive results like $y = 2 and $z = 0.23, then int and subtraction is enough.
if you're more adventurous:
$precision = 100; # 2 decimal point assumed precision
$x = -2.33;
$y = int($x);
$z = ((abs($x) * $precision) % (abs($y)*$precision)) / $precision;
the hardest line to type correctly is: stty erase ^H