C # RegEx для десятичного числа - PullRequest
0 голосов
/ 22 мая 2011

Я пытаюсь создать регулярное выражение для текстового поля, которое должно содержать только цифры или десятичные дроби.Например, я должен быть в состоянии ввести и 10, и 10 350.

Десятичный разделитель, который я буду использовать, - это "," и десятичной длине не нужно ограничение.

Любой знаеткак я могу сделать такой RegEx?

Ответы [ 4 ]

3 голосов
/ 22 мая 2011

Я бы тоже пошел на decimal.TryParse(), но если вам действительно нужен RegEx, то что-то вроде этого должно работать: (\d+(,\d*)?)

1 голос
/ 22 мая 2011

Просто используйте decimal.TryParse или double.TryParse.

0 голосов
/ 22 мая 2011

Вот ваше регулярное выражение:

^[\d]+,?[\d]*$

проверьте, соответствует ли оно тому, что находится в вашем текстовом поле.

0 голосов
/ 22 мая 2011

если вы будете использовать его во многих местах в своем проекте, вы можете заставить новый TextBoxcontrol принимать только число и делать ',' когда даже '.щелкнул, и вы можете сделать тест на него, когда он lostfocus ()

...