Следующая проверка используется в JavaScript для проверки чисел с плавающей точкой или без точки, при этом не пропускает варианты когда точка стоит в начале или конце и перед или после её(соответственно) нет цифр.
!(/^\d+(?:[\.,]\d+)?$/).exec((value_inp+'').replace(',','.'))
На PHP это регулярное выражение выглядит так:
preg_match("|^\d+(?:[\.,]\d+)?$|is", strtolower($checkText));
Символы
.(точка) - любой символ
s - пробельный символ, в том числе табуляция(\t), перенос строки(\n), возврат каретки (\r);
S - любой символ кроме пробельного;
w - любая буква или цифра;
W - не буква и не цифра;
d - любая цифра;
D - любой символ кроме цифр;
[:alpha:] - буква;
[:digit:] - цифра;
[:alnum:] - буква или цифра;
[:space:] - пробельный символ;
[:blank:] - пробельный символ или символы с кодом 0 или 255;
[:cnrlt:] - управляющий символ;
[:graph:] - символ псевдографики;
[:lower:] - символ нижнего регистра;
[:upper:] - символ верхнего регистра;
[:print:] - печатный символ;
[:punct:] - знак пунктуации;
[:xdigit:] - цифра в шеснадцатиричном формате, то есть цифры и буквы от A до F;