123
-123
1123.45
-123.45
などのように
整数、もしくは小数を含む数値で
正も、負もありうるような値が来るときに
それが数値であると判断するときに
正規表現を使う場合、
どの様に記述すれば良いのでしょうか

$hoge= '-12.abc34'
preg_match('/[^-]?\d+(\.\d+)?$/',$hoge);
としてもtrueとなってしまいました。

識者の方、よろしくお願い致します。