【发布时间】:2015-05-25 00:44:59
【问题描述】:
我有一个表达式 ($ASMLNA$ * $TSM$ * 8 * ($GrossDownTarget$ * $005930K$)+15)
现在我正在尝试获取 $$ 之间的所有变量。示例 $ASMLNA$ 所以对我来说应该是 ASMLNA。
我已经尝试过使用 RegEx,这就是我迄今为止能够做到的
正则表达式 r = new Regex(@"[^\$]"); 字符串内容 = txtRegEx.Text.Trim(); MatchCollection ImageCollection = r.Matches(Contents); 字符串 tempContents = string.Empty; foreach(ImageCollection 中的匹配项) { tempContents+= 匹配值; }如果有人能指出正确的方向,那就太好了。
【问题讨论】:
-
是什么让你觉得这里需要使用正则表达式?为什么不一次遍历字符串一个字符并将开始和结束位置保存到一个
LinkedList<int>(或者您可以有两个:一个用于开始,一个用于结束),然后通过无正则表达式代码执行任何其他魔术也一样?