Регулярка. Строка из чисел

GoodLuck777

Новичок
Нужно проверить состоит ли строка ТОЛЬКО из чисел, помогите, не отправляйте в мануал и так читаю, что делаю не так? Выводит все подряд, даже текст.

preg_match('/^\d*/', $text);
 

GoodLuck777

Новичок
Вышел из положения следующим образом:

if (is_numeric($text)) {

}

Но вопрос актуален, интересно, что делал не так.
 

GoodLuck777

Новичок
спасибо, понял ошибку, забыл поставить конец строки $,

/^\d+$/

Ну и + полезнее чем $ в данном случае.
 

Духовность™

Продвинутый новичок
PHP:
function is_decimal($value, $unsigned=false)
	{
	    $pattern = $unsigned ? '~^([0-9]+)$~' : '~^([+\-]?[1-9][0-9]*|0)$~';

	    if (preg_match($pattern, strval($value), $matches))
	    {
	        return $matches;
	    }

	    return FALSE;
	}
 

iceman

говнокодер
> Ну и + полезнее чем $ в данном случае.

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

GoodLuck777

Новичок
PHP:
function is_decimal($value, $unsigned=false)
	{
	    $pattern = $unsigned ? '~^([0-9]+)$~' : '~^([+\-]?[1-9][0-9]*|0)$~';

	    if (preg_match($pattern, strval($value), $matches))
	    {
	        return $matches;
	    }

	    return FALSE;
	}
я так понимаю эта функция для проверки не только целого числа, у меня как раз нужно только целое, но за функцию спасибо
 

Ragazzo

TDD interested
GoodLuck777
у меня есть в электронном , если интересует пиши в ЛС мыло, скину
 

AmdY

Пью пиво
Команда форума
а мне в выходные должны книгу фаулера доставить, решился таки купить, хотя прочитал её в электронном варианте на русском и частично на английском. вот решил сказать спасибо деньгами.
может секрет того, что люди ничего не выносят из книг и мануалов заключается как раз в их бесплатности, а что досталось за так, то не ценят.
 
Сверху