Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.06.25;
Скачать: CL | DM;

Вниз

Регулярные выражения в php   Найти похожие ветки 

 
php   (2006-05-23 20:33) [0]

Конечно знаю, что начнёте посылать читать документацию, но нормальной документации не удалось найти, а той, что нашёл - мало.
В общем проблема то пустяковая.... Определить, является ли строка числом, но с условием, что число не отрицательно и не равно 0 или 0000... (в общем нескольким нулям).


 
wicked ©   (2006-05-23 20:41) [1]

сам регексп - "([0-9]+)" или "([\d]+)"
потом то, что он нашел, конвертируем в число и проверяем на неравенство 0....


 
DillerXX ©   (2006-05-23 20:46) [2]


if ($str=~/^(\d+)/) {
 unless ($1=~/^0+$/) Die "Bad string\n"; else print "Good String\n";

вроде так, правда это на Перле, как на ПХП хз... на работоспособность тоже не проверял


 
php   (2006-05-23 22:00) [3]

Что-то не могу заставить работать эти регэкспы.
Вот мой пример:

 $var1="110c";
 var_dump($var1);

 if ((ereg("[0-9]", $var1)) && ($var1>0))
 {
   echo "=)";
 }
 else
 {
   echo "=(";
 }

При таком значении $var1 такое условие удовлетворяется.
Что здесь модифицировать, чтобы строка просматривалась на предмет наличия символов отличных от цифр?


 
Loginov Dmitry ©   (2006-05-23 22:04) [4]

php   (23.05.06 20:33)
Конечно знаю, что начнёте посылать читать документацию, но нормальной документации не удалось найти, а той, что нашёл - мало.


Начнем посылать :)

http://phpclub.ru/detail/article/regexp_1


 
php   (2006-05-23 22:11) [5]

О! Это я ещё не читал =))


 
wicked ©   (2006-05-23 22:12) [6]

> php   (23.05.06 22:00) [3]
а регекспы не судьба полностью копировать из приведенных примеров?....


 
php   (2006-05-23 22:17) [7]


> wicked ©   (23.05.06 22:12) [6]

Не работает =(


 
wicked ©   (2006-05-23 22:54) [8]

> php   (23.05.06 22:17) [7]
ааа, ну да, и не будет работать..... я то перловый регексп привел, для него preg* функции есть.... не заметил сразу.....


 
McSimm ©   (2006-05-23 23:22) [9]

preg_match("/^\d+$/", $s) && ($s > 0)


 
Некто ©   (2006-05-24 10:31) [10]

Всем спасибо за ответы. :)
Вроде сам разобрался.

if ((!ereg("[^0-9]", $var1)) && ($var1>0))
{
 echo "=)";
}
else
{
 echo "=(";
}


 
vidiv ©   (2006-06-01 03:57) [11]

ereg - медленные функции...

п.с. в некоторых случаях надо быть осторожным с числами с ведущими нулями, т.к. они могут распознаваться, как будто записаны в 8ричной системе счисления



Страницы: 1 вся ветка

Текущий архив: 2006.06.25;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.058 c
3-1146037110
Alexey V.
2006-04-26 11:38
2006.06.25
dbf в XML


15-1149088430
Роберт Ленгдон
2006-05-31 19:13
2006.06.25
Завтра экзамен!


2-1149644505
Никос
2006-06-07 05:41
2006.06.25
Типы


6-1139813826
Pavlusha00
2006-02-13 09:57
2006.06.25
БД Через Proxy


15-1149153411
Shaman_
2006-06-01 13:16
2006.06.25
Написал утилиту. Прошу помочь в тестировании