只能包含"(),数字,sin,lg,ln,cos", 也就是数学表达式。
请高手指教!

解决方案 »

  1.   

    简单一点,只支持整数\d+|sin|lg|ln|cos|\(|\)其它的函数,运算符之类的可再加入
      

  2.   

    ^(sin|lg|ln|cos)\(([1-9]\d*)|\d\)$这个东西很灵活,你可以随心所欲的控制.比如括号中的参数大小等等
      

  3.   


    using System;
    using System.Collections.Generic;
    using System.Text;
    using System.Text.RegularExpressions;namespace ConsoleApplication4
    {
        class Program
        {
            static void Main(string[] args)
            {
                Regex reg = new Regex(@"^(sin|lg|ln|cos)\(([1-9]\d*)|\d\)$");
                while (true)
                {
                    Console.WriteLine(reg.IsMatch(Console.ReadLine()));
                }
            }
        }
    }
      

  4.   

    如果LZ的意思是其中sin,lg,ln,cos只可以是对应的字符串有如何?
      

  5.   

    math类里的方法很多很多
    还是乖乖的异常捕获吧...
      

  6.   

     对这个应该行 ^(sin ¦lg ¦ln ¦cos)\(([1-9]\d*) ¦\d\)$