日期:2014-05-18 浏览次数:21269 次
Regex reg = new Regex(@"^-?\d{1,6}\.\d{1,4}$|^-?\d{1,6}$");
List<string> demo = new List<string> { "sfsf", "11231231.1321", "123.1231313", "-11231231.1321", "-123.1231313", "123123", "12313." };
demo.ForEach(
data => Response.Write(data + (reg.IsMatch(data) ? "通过" : "不通过")+"<hr/>")
);
//结果
//sfsf不通过
//11231231.1321不通过
//123.1231313不通过
//-11231231.1321不通过
//-123.1231313不通过
//123123通过
//12313.不通过
------解决方案--------------------
“-”应该是负数的意思吗?
是的话就试试我的
------解决方案--------------------
第二个:通过JS判断keycode的范围是否合法要来快点。
------解决方案--------------------
测试文本:-123456.1234
表达式:.*(\d){6}(\.)+(\d){4}
结果
-123456.1234
是这样的意思吗?
不太清楚你需要的逻辑,下面简单举例
private void textBox1_Leave(object sender, EventArgs e)
{
string pattern = @".*(\d){6}(\.)+(\d){4}";
Regex rg = new Regex(pattern);
if (!rg.IsMatch(textBox1.Text.Trim()))
{
MessageBox.Show("Date format shoule be '#DDDDDD.DDDD'");
textBox1.Focus();
}
}
------解决方案--------------------
^-?\d{6}.\d{4}$