Money格式的正则表达式

时间:2014-05-07 10:52:34

标签: javascript asp.net

我写了一个正则表达式

^\s*(?=.*[1-9])\d*(?:\.\d{1,3})?\s*$

对于接受一个点的金钱格式,但我也需要接受逗号。那么如何修改上面的正则表达式来接受逗号?

示例:1,20,000.000 2,000,000 3,30,30,000.000

2 个答案:

答案 0 :(得分:0)

Modiyf to it:

^\s*(?=.*[1-9])\d+[,\.\d]+$

答案 1 :(得分:0)

尝试"(\ d {1,3} [,。])+ \ d {3}"

string pattern = @"(\d{1,3}[,.])+\d{3}";
Regex r = new Regex(pattern, RegexOptions.None);
string s = "1,20,000.000 2,000.000 3,30,30,000.000";

foreach (Match m in r.Matches(s))
{
    Console.WriteLine(m.Value);
}

演示:http://dotnetfiddle.net/lTaBbV