Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Общие вопросы по .NET и C# > Как провеить строку на содержание числа или пустот


Автор: Stas123 30.9.2014, 18:08
Как, используя регулярные выражения, проверить что конце строки( т.е. начиная с определенного номера символа, допустим с четвертого) содержит только число или ничего? т.е. для строки "asxc1236", "vCfg645.7" и "udrf" проверка должна вернуть true, а для строк "'vbnm3e4", "fdgzA23" проверка вернет false.

Автор: Ilya81 1.10.2014, 08:22
Примерно так (не проверял):
Код

bool Check(string toCheck)
{
  return Regex.IsMatch(toCheck,@"^.{0,4}[0-9]+(\.[0-9]+)?$");
}

Автор: Stas123 1.10.2014, 09:59
Спасибо, но к сожалению не находит "udrf"

Автор: Stas123 1.10.2014, 10:15
Вроде придумал - ^[\w][\w][\w][\w]([0-9]*[\.]?[0-9]*)$

Автор: Ilya81 1.10.2014, 10:58
Как вариант @"^[\w]{0,4}([0-9]+(\.[0-9]+)?)?$". Отличие - под этот вариант не подойдёт "vCfg." или "vCfg.7", под тот подойдёт.

Автор: mihryak 2.10.2014, 16:25
вопрос - зачем использовать регулярные выражения, если для решения примитивной задачи их так сложно писать?

Автор: korian 10.10.2014, 02:45
 :deleted

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