как узнать что в строке число?
От: AlexDav Россия  
Дата: 28.09.06 12:34
Оценка:
Полую от пользователей строку — обязательное условие это должно быть числом, как проверить строку на число?
Спасибо.
Re: как узнать что в строке число?
От: Pentx  
Дата: 28.09.06 12:37
Оценка:
Здравствуйте, AlexDav, Вы писали:

AD>Полую от пользователей строку — обязательное условие это должно быть числом, как проверить строку на число?

AD>Спасибо.

int.TryParse(...), float.TryParse(...) etc подойдет?
Re: как узнать что в строке число?
От: Pavel_Agurov Россия  
Дата: 28.09.06 12:37
Оценка:
Смотря какое.

Если целое в net 1.1, то

try
{
int.Parse(value);
}
catch
{
не число
}

Если целое в net 2.0, то

int.TryParse

Если плавающее, то

double.TryParse.
Re: как узнать что в строке число?
От: AlexDav Россия  
Дата: 28.09.06 12:39
Оценка:
Здравствуйте, AlexDav, Вы писали:

AD>Полую от пользователей строку — обязательное условие это должно быть числом, как проверить строку на число?

AD>Спасибо.


Всем огромное спасибо.
Re: как узнать что в строке число?
От: XXI  
Дата: 28.09.06 12:39
Оценка: 4 (1)
Здравствуйте, AlexDav, Вы писали:

AD>Полую от пользователей строку — обязательное условие это должно быть числом, как проверить строку на число?

AD>Спасибо.

Еще вариант — Microsoft.VisualBasic.Information.IsNumeric(строка/объект/что-нибудь) из Microsoft.VisualBasic.dll
Re: как узнать что в строке число?
От: ksg71 Германия  
Дата: 28.09.06 12:42
Оценка: -1
Здравствуйте, AlexDav, Вы писали:

AD>Полую от пользователей строку — обязательное условие это должно быть числом, как проверить строку на число?

AD>Спасибо.

А я б символы перебрал , если какой не цифра (разделитель) в начале будет быстрее
Das Reich der Freiheit beginnt da, wo die Arbeit aufhört. (c) Karl Marx
Re: как узнать что в строке число?
От: Hup Россия  
Дата: 29.09.06 05:57
Оценка:
Здравствуйте, AlexDav, Вы писали:

AD>Полую от пользователей строку — обязательное условие это должно быть числом, как проверить строку на число?

AD>Спасибо.

Можно и так...
inp = inp.Trim();
if (inp.Length > 0)
{
   Regex r = new Regex("^\\d+\\.*\\d*$", RegexOptions.IgnoreCase);
   Match m = r.Match(inp);
   if (!m.Success)
   {
      //msg = "Некорректное значение";
   }
}
Re: как узнать что в строке число?
От: godmother Украина  
Дата: 29.09.06 06:40
Оценка:
TryParse, конечно, лучше всего.. так просто для интереса – из «кустарных» — можно еще посимвольно char.IsDigit()
Re[2]: как узнать что в строке число?
От: fmiracle  
Дата: 29.09.06 07:20
Оценка:
Здравствуйте, Hup, Вы писали:

Hup>Можно и так...


1. Не учитываются опциональные +- в начале
2. Не прокатит, если надо проверять число в строке в соответствии с региональными настройками .
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Re[3]: как узнать что в строке число?
От: vitz  
Дата: 29.09.06 07:25
Оценка:
Здравствуйте, fmiracle, Вы писали:

F>Здравствуйте, Hup, Вы писали:


Hup>>Можно и так...


F>1. Не учитываются опциональные +- в начале

F>2. Не прокатит, если надо проверять число в строке в соответствии с региональными настройками .
Для людей которым все не катит:
создайте свой НКА и пользуйте на здоровье,
а остальный вполне устраивает Regex или TryParse или try{Parse}, все зависит от ситуации
Re: как узнать что в строке число?
От: _FRED_ Черногория
Дата: 29.09.06 07:32
Оценка:
Здравствуйте, AlexDav, Вы писали:

AD>Полую от пользователей строку — обязательное условие это должно быть числом, как проверить строку на число?


Немного теории здесь: Как проверить, является ли строка числом, e-mail'ом?
Автор(ы): Николай Меркин
Дата: 19.01.2002
... << RSDN@Home 1.2.0 alpha rev. 652>>
Now playing: «Тихо в лесу…»
Help will always be given at Hogwarts to those who ask for it.
Re[2]: как узнать что в строке число?
От: AlexDav Россия  
Дата: 29.09.06 07:39
Оценка:
Здравствуйте, _FRED_, Вы писали:

_FR>Здравствуйте, AlexDav, Вы писали:


AD>>Полую от пользователей строку — обязательное условие это должно быть числом, как проверить строку на число?


_FR>Немного теории здесь: Как проверить, является ли строка числом, e-mail'ом?
Автор(ы): Николай Меркин
Дата: 19.01.2002


Ну эта теория больше подойдет тем кто собрался компилятор писать
Re[4]: как узнать что в строке число?
От: fmiracle  
Дата: 29.09.06 10:51
Оценка: +1
Здравствуйте, vitz, Вы писали:

F>>1. Не учитываются опциональные +- в начале

F>>2. Не прокатит, если надо проверять число в строке в соответствии с региональными настройками .
V>Для людей которым все не катит:
V>создайте свой НКА и пользуйте на здоровье,
V>а остальный вполне устраивает Regex или TryParse или try{Parse}, все зависит от ситуации

Чего-то я не понял, что вызвало такую... ммм... странную реакцию... Я тебя чем-то обидел?
Спросили о решении проблемы. Дали ответ. Я указал на просто ошибку (знак) в решении и на то, что предложенное решение довольно узко — возможно, что оно решало не совсем ту проблему.

Что не так-то?
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Re[5]: как узнать что в строке число?
От: vitz  
Дата: 29.09.06 12:14
Оценка:
Здравствуйте, fmiracle, Вы писали:

F>Здравствуйте, vitz, Вы писали:


F>>>1. Не учитываются опциональные +- в начале

F>>>2. Не прокатит, если надо проверять число в строке в соответствии с региональными настройками .
V>>Для людей которым все не катит:
V>>создайте свой НКА и пользуйте на здоровье,
V>>а остальный вполне устраивает Regex или TryParse или try{Parse}, все зависит от ситуации

F>Чего-то я не понял, что вызвало такую... ммм... странную реакцию... Я тебя чем-то обидел?

F>Спросили о решении проблемы. Дали ответ. Я указал на просто ошибку (знак) в решении и на то, что предложенное решение довольно узко — возможно, что оно решало не совсем ту проблему.

F>Что не так-то?

А чем собсно странная реакция?
Что предложение написать НКА есть посыл куда подальше, этот не будет узким предложением тут вы сможете реализовать все требуемые вам тонкости (+,-, разд. дроб части и т. д.)
Зачастую человек задавая вопрос не ставит цели получить ответ.

как узнать что в строке число?

какое число? целое, натуральное? натуральная дробь? иррациональное (корень кв. из 2) или чего еще там...
для целого, вполне подойдет проверить строку на содержание не цифровых символов, ну и знак
для натурального: (+)разделитель дробной части а возможно еще и степень 10 (Е2 т. д.)
примеров масса...
Re[5]: как узнать что в строке число?
От: Аноним  
Дата: 29.09.06 12:23
Оценка:
Натуральная дробь?! Новое слово в математике!


данное сообщение получено с www.gotdotnet.ru
ссылка на оригинальное сообщение
Re[6]: как узнать что в строке число?
От: vitz  
Дата: 29.09.06 12:49
Оценка:
Здравствуйте, Paulmay, Вы писали:

P>Натуральная дробь?! Новое слово в математике!


P>
данное сообщение получено с www.gotdotnet.ru

P>ссылка на оригинальное сообщение

Уроки нужно было не прогуливать
1/2 — натуральная
0.5 — десятичная
RE: Re: как узнать что в строке число?
От: Аноним  
Дата: 29.09.06 13:07
Оценка:
Здравствуйте, AlexDav, Вы писали:

AD>Полую от пользователей строку — обязательное условие это должно быть числом, как проверить строку на число?

AD>Спасибо.

int.TryParse(...), float.TryParse(...) etc подойдет?

можно еще на стороне клиента regex валидатором


данное сообщение получено с www.gotdotnet.ru
ссылка на оригинальное сообщение
Re[4]: как узнать что в строке число?
От: Lloyd Россия  
Дата: 29.09.06 13:14
Оценка:
Здравствуйте, vitz, Вы писали:

F>>1. Не учитываются опциональные +- в начале

F>>2. Не прокатит, если надо проверять число в строке в соответствии с региональными настройками .
V>Для людей которым все не катит:
V>создайте свой НКА и пользуйте на здоровье,
V>а остальный вполне устраивает Regex или TryParse или try{Parse}, все зависит от ситуации

А что такое НКА?
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Re[5]: как узнать что в строке число?
От: vitz  
Дата: 29.09.06 13:28
Оценка: 1 (1)
Здравствуйте, Lloyd, Вы писали:

L>Здравствуйте, vitz, Вы писали:


F>>>1. Не учитываются опциональные +- в начале

F>>>2. Не прокатит, если надо проверять число в строке в соответствии с региональными настройками .
V>>Для людей которым все не катит:
V>>создайте свой НКА и пользуйте на здоровье,
V>>а остальный вполне устраивает Regex или TryParse или try{Parse}, все зависит от ситуации

L>А что такое НКА?

Вы что прикалываетесь?
НКА — Недетерменированный Конечный Автомат, хотя для такой задачи и ДКА подойдет
если я не ошибаюсь НКА в Regex во всю используется...
Re[6]: как узнать что в строке число?
От: Lloyd Россия  
Дата: 29.09.06 14:49
Оценка:
Здравствуйте, vitz, Вы писали:

L>>А что такое НКА?

V>Вы что прикалываетесь?

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

V>НКА — Недетерменированный Конечный Автомат, хотя для такой задачи и ДКА подойдет

V>если я не ошибаюсь НКА в Regex во всю используется...

Спасибо.
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.