В php мне нужно проверить любое количество положительных и / или отрицательных чисел в качестве входных данных от textarea. Числа могут быть плавающими и будут разделяться запятой.
Действительно:
",,,66,,78.8,-89.8,,0.0,,3.14," or "," or "67,89,10,0876,,"
С помощью regex101.com я создал это регулярное выражение
^((-?\d+(\.\d+)?)|(,+))*$
и в php у меня есть этот код
if (preg_match("/^((-?\d+(\.\d+)?)|(,+))*$/", $text))
{
echo "yes";
} else
{
echo "no";
}
И моя проблема в том, что это регулярное выражение также проверяет "-" и дополнительно "." среди чисел.
Это должно быть недействительно:
",,67.8,89.8787,78-89,-8,07,,33.33.33,,,"
Может кто-нибудь помочь как улучшить этот код?