我想验证一下公式 
Money(100>=1000,1)
中间>可换为 =,>.>=,<,<=
括号中的内容除了 这些符号"=,>.>=,<,<=" 和 逗号外全部为数字
每个公式可有多个.中间用 分好隔开";"
公式中的数字都是整数,不会有负数和小数出现现在单个Money(100>=1000,1) 公式验证ok了。
如果我有多个Money(100>=1000,1);Money(100>=1000,1);Money(100>=1000,1)
这个我不知道如何写。请各位大虾帮帮忙单个公式的正则表达式:\bMoney\b\(\d*[<=>]{1,2}\d*\,\d*\)本人用的是C#语言

解决方案 »

  1.   

    string str = File.ReadAllText(@"C:\Documents and Settings\Administrator\桌面\test.txt", System.Text.Encoding.GetEncoding("gb2312"));
           Regex reg = new Regex(@"Money\(\d+[<=>]{1,2}\d+,\d+\)");
            foreach (Match m in reg.Matches(str))
            {
                Response.Write(m.Value + "<br/>");
            }
    /*
    Money(100>=1000,1)
    Money(100>=1000,1)
    Money(100>=1000,1)
    */
    不知道,这样算不算?
      

  2.   


    其实要真是这样的话,你可以不用正则啊。
    用split(';')
    就可以
      

  3.   

    ^(Money\(\d+[><]=?\d+,\d+\);?)+$
      

  4.   

    我修改后的
    ^(Money\(\d*[<=>]{1,2}\d*\,\d*\);?)+$
      

  5.   

    ^(Money\(\d*[<=>]{1,2}\d*\,\d*\);?)+$