Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Perl: Общие вопросы > Пропарсивание цифр


Автор: kukich 8.12.2010, 12:23
Привет
Нужно определить цифра ли введена - вот мой код:
Код
 
if ($dom!~m/[0-9]+/)
   {
     print "НЕ ЦИФРА"
   }
  else
   {
     print "ЦИФРА";
   }

Вот как работает программа: 
Если $dom = 1212 - ЦИФРА
Если $dom = ваня - НЕ ЦИФРА
но если в имени присутствует цифра ,например $dom = ваня12, или $dom=12ваня то программа выдает ЦИФРА,хотя таковой не является.

как правильно пропарсить?

Автор: ginnie 8.12.2010, 12:31
kukich, должен Вас огорчить - 1212 тоже не цифра, это число, а цифры 0-9.
Попробуйте такое условие $dom !~ /^\d+$/

Автор: kukich 8.12.2010, 12:44
Цитата(ginnie @ 8.12.2010,  12:31)
kukich, должен Вас огорчить - 1212 тоже не цифра, это число, а цифры 0-9.
Попробуйте такое условие $dom !~ /^\d+$/

Спасибо,твой вариант работает.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)