[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Помогите составить выражение
Angelika_S
Здравствуйте!

Пожалуйста, помогите отчаявшейся девушке составить регулярное выражение для проверки следующего вводимого текста:

1,2,5/3;1/2;1-4/2

или

1-9/3

где числа до знака "/" - это номера страниц какого-то документа. Числа с "-" означает диапазон от и до включительно.

число после "/" - это количество частей, на которые страницу нужно поделить.

Нужна простая проверка правильности введения этого шаблона. Если пользователь введет 1?9/3 или что-то подобное, должно выдаться false.

Заранее большое спасибо!



Спустя 7 минут, 52 секунды (29.06.2010 - 18:35) Winston написал(а):
Так ?
if (!preg_match ("#^(\d,?+|\d\-\d)\/[0-9]+$#"))
echo 'Не верно !';

else
echo 'OK';

Спустя 42 минуты, 34 секунды (29.06.2010 - 19:17) Angelika_S написал(а):
Спасибо большое, но это работает только с
1-5/3, например 1-5/3;1,2/2 то выдает false хотя все правильно
wink.gif

Спустя 8 минут, 40 секунд (29.06.2010 - 19:26) Winston написал(а):
Вам нужно одно из этих значений: 1-5/3; или 1,2/2, или эти 2 значения вместе вводить ?

Спустя 13 часов, 35 минут, 25 секунд (30.06.2010 - 09:02) Angelika_S написал(а):
Да, вместе. Их может быть несколько через знак ";" в одном поле. Спасибо smile.gif

Спустя 2 часа, 39 минут (30.06.2010 - 11:41) tomash написал(а):
if (!preg_match ("^((?:\d(?:-|,)\d\/\d){1};(?:\d(?:-|,)\d\/\d){1})+$"))

echo 'Не верно !';

else
echo 'OK';
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2025 Invision Power Services, Inc.