Do not anchor the matches, because of sprintf padding.
The quest for the hexfp exponent continues.
Partial revert of c6d2504a: do not use isfinite().

Instead return to a well-defined hack that has served us for years.

Immediate reason: VMS.  It has isfinite(), but due to messy
reasons it doesn't currently get the prototype.