|
|
|
| есть скрипт (его НЕ надо переделывать)
<?php
$string="2006-08-08"; #тут любая дата в таком формате ГГГГ-ММ-ДД
$str="тут_регулярка";
if(preg_match($str, $string))
{
echo('Сторка составлено неверно!<br>');
}
else
{
echo('Строка составлена верно!<br>');
}
?>
|
Как сделать, чтобы он проверял, правильно ли составлена строка для даты, которая идет в формате ГГГГ-ММ-ДД.
Для проверки правильность ввода ника (буквы, цифры, спец.знаки) было в этом же скрипте использовано выражение '/[^a-zа-яё0-9-_~@\!\^\(\)\.\d]+/i' и все работало как надо. | |
|
|
|
|
|
|
|
для: victoor
(04.09.2006 в 20:25)
| | Можно поступить следующим образом
<?php
$string="2006-08-08"; #тут любая дата в таком формате ГГГГ-ММ-ДД
$str="|^[\d]{4}-[\d]{2}-[\d]{2}$|";
if(preg_match($str, $string))
{
echo('Сторка составлено неверно!<br>');
}
else
{
echo('Строка составлена верно!<br>');
}
?>
|
| |
|
|
|
|
|
|
|
для: cheops
(04.09.2006 в 22:40)
| | неподходит... :-(
не по той ветке идет...
Надо, чтобы по ветке true шло, когда строка составлена НЕПРАВЕЛЬНО, а по ветке folse, когда строка составлена ПРАВИЛЬНО. | |
|
|
|
|
|
|
|
для: victoor
(04.09.2006 в 23:07)
| | А, вон у вас как текст расположен, тогда нужно добавить отрицание
<?php
$string="2006-08-08"; #тут любая дата в таком формате ГГГГ-ММ-ДД
$str="|^[\d]{4}-[\d]{2}-[\d]{2}$|";
if(!preg_match($str, $string))
{
echo('Сторка составлено неверно!<br>');
}
else
{
echo('Строка составлена верно!<br>');
}
?>
|
| |
|
|
|
|
|
|
|
для: cheops
(04.09.2006 в 23:23)
| | не, так тоже не подходит, т.к. для проверки ника с регуляркой /[^a-zа-я;ё0-9-_~@\!\^\(\)\.\d]+/i
работает без отрицания.
Или надо и эту регулярку исправить... а как тогда? | |
|
|
|
|
|
|
|
для: victoor
(04.09.2006 в 23:36)
| | Какую, причем тут ник? | |
|
|
|
|
|
|
|
для: kasmanaft
(05.09.2006 в 12:29)
| | есть функция у меня, ее код вы видите на 3 поста выше. Она используется для проверки коректности введенных данных, все отличие в регулярке, которая ей передается. Для проверки ника она работает (используется рег. выражение '/[^a-zа-я;ё0-9-_~@\!\^\(\)\.\d]+/i'). Теперь надо сделать так, чтобы она работала и для проверки даты в формате ГГГГ-ММ-ДД | |
|
|
|
|
|
|
|
для: victoor
(04.09.2006 в 23:36)
| | вот так попробуй исправить
/^[a-zа-я;ё0-9-_~@\!\^\(\)\.\d]+$/i
|
будет работать с отрицанием.
а вообще неверно построена твоя функция. Логичнее было бы поменять местами
echo('Сторка составлено неверно!<br>');
и
echo('Сторка составлено верно!<br>'); | |
|
|
|
|
|
|
|
для: ec_stasis
(05.09.2006 в 16:07)
| | >вот так попробуй исправить
Спасибо, так заработало.
>а вообще неверно построена твоя функция. Логичнее было бы поменять местами
> echo('Сторка составлено неверно!<br>');
>и
> echo('Сторка составлено верно!<br>');
ну вообще я вначале планировал это как функцию поиска запрещенных символов, т.е. найдены запрещенные символы (неправильная строка) или ненайдены запрещенные символы (разрешенная строка)
поэтому так ветви и расположены, а потом лень было править, к тому же я не знал, как исправить регулярку.
Еще раз спасибо. | |
|
|
|