2014-01-27 24 views
0

我想提取 -5X^-2 到简单的数学提取使用正则表达式

-5

X

^

-2

我尝试使用这

var strlist = Regex.Matches(str, @"[+-]?\d+|\D+") 
      .Cast<Match>() 
      .Select(m => m.Value) 
      .ToList(); 

结果是

-5

X^-

+0

你需要[反向波兰表示法](http://en.wikipedia.org/wiki/Reverse_Polish_notation)。 –

回答

2

使用正则表达式解析数学表达式树必将给你一个脑袋疼!

只需手动编写解析器并将表达式解析为树。