Проверка на правельность ведённые цен

DenVeroid

Новичок
Проверка на правельность ведённые цен

помогите сделать проверку на правльность ведённых чисел, числа должны быть такими

1,334
2,4
5,05
37
27,8
27,94
27,9201


тоесть перед запятой должны стоять только цифры от 1 до 4 символов, и после запятой от 1 до 4 символов, в качестве разделителя должен быть только запятая.

пытался сделать но почемуто не получается

preg_match("/^[1-4]{1,2}+,+[0-9]{1,4}$/i", $string)
 
CCCP_MOCKBA допотопными, как ссср, ерегами, никто уже давно не пользуется.
вылезай из лесу, партизан
 
Фанат, это, цифры должны быть только от 0 до 9

-~{}~ 14.01.05 00:03:

CCCP_MOCKBA, спаисбо, то что нужно
 
не знал, что 1-4 означает от 0 до 9
буду знать, спасибо

-~{}~ 13.01.05 20:06:

все-таки, система автоматических ярлыков никуда не годится.
вешать на ЭТО значок "продвинутый новичок" - это обманывать окружающих.

DenVeroid, в следующий раз пиши прямо в Оффтопик. "Дяденьки, напишите бедняжечке готовый код".
 
значить суть следующая,
первым идет цыфра (возможно нескольно) поэтому ^[0-9]+
после чего, окончание - запятая и несколько цыфр (а может просто окончание) - (,?[0-9]+)?

результат - /^[0-9]+(,?[0-9]+)?$/
 
Фанат
кажись для себя :) но зато написано правильно! Вдруг кому пригодится! :)
 
он оно совершенно не отвечает условию задачи
как можно утверждать, что оно написано правильно?
 
чувак даже не сдувая пыли с музейного кода, прикрутил его к своему чудокоду и блаженный на этом успокоился..
 
Фанат,
єсли так не правильно, то бросай в меня тортом :)

/^[0-9]{1,4}(,?[0-9]{1,4})?$/


Frol, посмотрел бы я, как бы ти писал на украинском :)
 
vedeney
так уже лучше, но мне кажется, что он ошибся, и во втором блоке должно быть 1,2

собственно, проблема его не в том, что он не знает, как сделать, а в том, что руки его не ведают, что творят.
 
vedeney, но оказывается вывает 0.0001$
to All, и еще, я понимаю, что никого не смущает запятая.
Проверте результат после своей проверки на формат:
PHP:
$value1 = (float) '01,0001';
$value2 = (float) '01.0001';
echo (string) $value1 . '<BR />';
echo (string) $value2;
Хотя если такую цену не умножать на количество товара, а только отображать, то можно и с запятой... Для бывшего СНГ.
 
Сверху