2011-12-06 47 views
0

我有一个MVC3 C#.NET Web应用程序。我有两个属性是双打的,并且可以具有(值> = 0)和(值为< = 2)。我想用正则表达式来限制这两个字段的值。想法?在双精度上的最大值和最小值的正则表达式

+5

你为什么要使用正则表达式这个,而不是简单的值转换为double,然后使用普通的比较操作? – knittl

+0

我同意@ knittl。 [阅读此](http://msdn.microsoft.com/en-us/library/xbtzcc4w.aspx)了解更多信息。 – FakeRainBrigand

+0

如果你真的,_really_,__really__想用RegEx来实现,像这样的东西会工作'''0 *([10] \。\ d * | 2 $ | 2 \ .0 * $)''' – FakeRainBrigand

回答

1

我真的不认为正则表达式是一个好主意,在这里,但如果你想知道...

让我们打破它,你需要匹配的内容:0(.XXXX),1(.XXX)和2(.0)

var regex = new Regex(@"0*([01](\.[0-9]*)?|2(\.0*)?)"); 
+0

那么-1.1呢?科学记数法呢?什么都有迹象?等 – FailedDev

+0

@FailedDev .... 1.1是好的科学不是。它们只是代表百分比乘数。 – MikeTWebb

相关问题