我现在想进行公式分析:有如下
MYHIGH:(OPEN-REF(HIGH,1))/MA(CLOSE,20),COLORGREEN;
MYLOW:(OPEN-REF(LOW,1))/MA(CLOSE,20),COLORRED;想用正则表达式的方法将公式中的部分内容提取出来,如下:
(OPEN-REF(HIGH,1))/MA(CLOSE,20),
(OPEN-REF(LOW,1))/MA(CLOSE,20),
解决方案 »
- 制作安装程序时,如何制作数据库安装包?
- 进程间全局变量如何共享?
- typeof表达式地疑问
- 为什么同样的数据库连结语句在windows 窗体可运行,在ASP.NET下去显示用户 'NT AUTHORITY\NETWORK SERVICE' 登录失败。连接字符串属性无效 '
- VS2008的TeamBuild问题
- 各人高人来看看,确实很急!!!!!!!关于主界面和DLL窗体的问题
- C#SQL查询
- 请问我现在正在学JAVA和C#哪各更有前途?
- 自己写的类库文件,和 继承Component写的组件。有啥区别??
- 我日,天天见鬼,我用wsdl做了个webservice的代理类,把文件包含到webapplication中,debug的时候竟然说namespace System.Web.Services
- textbox定位问题
- 使用dataGrid控件,如何更新数据库。
俺笨,求简洁的 string cc = "MYHIGH:(OPEN-REF(HIGH,1))/MA(CLOSE,20),COLORGREEN; MYLOW:(OPEN-REF(LOW,1))/MA(CLOSE,20),COLORRED; "; List<string> dd = new List<string>();
MatchCollection mc2 = Regex.Matches(cc, @":(.*?)\),");
foreach (Match m in mc2)
{
if (!dd.Contains(m.Groups[1].Value))
{
dd.Add(m.Groups[1].Value + ")");
}
}
晕,难道要这样写才能明白?Regex reg=new Regex(@"(?<=MY\w+?:).+?(?=,COLOR)");
string str = "MYHIGH:(OPEN-REF(HIGH,1))/MA(CLOSE,20),COLORGREEN; MYLOW:(OPEN-REF(LOW,1))/MA(CLOSE,20),COLORRED; ";
string result="";
foreach(Match m in reg.Matchs(str))
{
result+=m.Value+"\r\n";
}
result输出为:
(OPEN-REF(HIGH,1))/MA(CLOSE,20)
(OPEN-REF(LOW,1))/MA(CLOSE,20)
应为foreach(Match m in reg.Matches(str))