1
string[] num = Regex.Split(expr, @"\(|\)|\-|\+|\*|\/").Where(s => !String.IsNullOrEmpty(s)).ToArray();

为此,我得到了操作符大括号

4

1 回答 1

1

使用lookaround,即lookahead和lookbehind来分割输入

 (?<=\(|\)|\-|\+|\*|\/)|(?=\(|\)|\-|\+|\*|\/)
                       ^

如果没有环顾四周,正则表达式引擎会拆分这些字符并吃掉它,即它不会在结果中显示它

如果你想评估数学表达式,看看这些

于 2013-06-27T06:30:44.523 回答