If you want to check with exponential, + / -. then the best expression is:
^[-+]?[0-9]*\.?[0-9]+([eE][-+]?[0-9]+)?$
as a result:
select '12.41212e-5' ~ '^[-+]?[0-9]*\.?[0-9]+([eE][-+]?[0-9]+)?$' ;
as true.
Expression from: https://www.regular-expressions.info/floatingpoint.html
You can check other types of numbers, for example, if you expect a decimal, with a sign.
select '-12.1254' ~ '^[-+]?[0-9]*\.?[0-9]+$';
detzu source share