CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
不看会后悔的Windows XP之经验谈 简单快捷DIY实用家庭影院
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  .NET技术 >  C#

[跪求]算法

楼主FlashElf(銘龘鶽)2005-01-07 22:54:59 在 .NET技术 / C# 提问

求算法  
  就是取   messagebox.show(<里面的内容>)  
  情况有很多如下:  
  MessageBox.Show("哈哈","提示");  
  取:"哈哈","提示"  
   
  MessageBox.Show(String.Format("当前时间   {0}",DateTime.Now),"提示");  
  取:String.Format("当前时间   {0}",DateTime.Now),"提示"  
   
  MessageBox.Show("当前时间"    
  +   DateTime.Now.ToString(),"提示");  
  取:"当前时间"    
  +   DateTime.Now.ToString(),"提示"  
   
  MessageBox.Show("当前读取纪录:"   +  
  dt.Rows.Count.ToString()+  
  String.Format("当前时间   {0}",DateTime.Now)   ,"提示");  
  取:"当前读取纪录:"   +  
  dt.Rows.Count.ToString()+  
  String.Format("当前时间   {0}",DateTime.Now)   ,"提示"  
   
  用正则表达式   试验了很久也没搞定,求各位朋友帮忙求个算法,先谢谢了 问题点数:100、回复次数:17Top

1 楼sangengyi(三更呓)回复于 2005-01-07 23:47:36 得分 0

问题不清楚,看不出要什麽算法。Top

2 楼mooddecode1980(心情解码)回复于 2005-01-08 00:14:02 得分 0

兄弟不懂..  
   
  帮你顶     :)Top

3 楼passos(古月春秋)回复于 2005-01-08 00:20:39 得分 0

简单的用词法分析的方法不就可以了么?  
   
  匹配了MessageBox.Show后,然后匹配   (   和   )Top

4 楼yufenfeila(雨纷飞啦)回复于 2005-01-08 00:28:17 得分 0

string   str   =   "MessageBox.Show(\"哈哈\",\"提示\");";  
  string   pattern   =   @"MessageBox.Show\((.[^\[]*)\);";  
  System.Text.RegularExpressions.Regex   regex   =   new   System.Text.RegularExpressions.Regex(pattern);  
  str   =   regex.Replace(   str,   "$1",   -1   );Top

5 楼Jinpanxu(浪)回复于 2005-01-08 10:11:41 得分 0

mark,學習Top

6 楼FlashElf(銘龘鶽)回复于 2005-01-08 23:22:31 得分 0

yufenfeila(雨纷飞啦)   你的方法不行啊   不润序   \   和   [   是什么意识?  
  没人答啊!Top

7 楼Fibona(Fibona)回复于 2005-01-09 00:26:30 得分 0

用正则表达式来进行分析,行不行?Top

8 楼yufenfeila(雨纷飞啦)回复于 2005-01-09 00:32:00 得分 0

我已经测试过了,应该符合你的要求  
  你可以开两个TextBox试试  
   
  string   str   =   textBox1.Text;  
  string   pattern   =   @"MessageBox.Show\((.[^\[]*)\);";  
  System.Text.RegularExpressions.Regex   regex   =   new   System.Text.RegularExpressions.Regex(pattern);  
  str   =   regex.Replace(str,   "$1",   -1);  
  textBox2.Text   =   str;  
   
  如果有什么问题给我短信Top

9 楼zachary7833(Miracle)回复于 2005-01-09 12:19:47 得分 0

同意楼上的Top

10 楼FlashElf(銘龘鶽)回复于 2005-01-09 23:27:51 得分 0

string   str   =   "MessageBox.Show(\"本次查询[3]条,耗时[13.5]毫秒\",\"提示\");";  
  string   pattern   =   @"MessageBox.Show\((.[^\[]*)\);";  
  System.Text.RegularExpressions.Regex   regex   =   new   System.Text.RegularExpressions.Regex(pattern);  
  str   =   regex.Replace(   str,   "$1",   -1   );  
   
  哥们你怎么试验的啊   为何里面不能有   \[   想不懂???Top

11 楼yufenfeila(雨纷飞啦)回复于 2005-01-10 22:27:43 得分 0

楼主,我正则写的不完善,下面的是改进过的  
   
  string   str   =   textBox1.Text;  
  string   pattern   =   @"MessageBox.Show\(((.|\n)*)\);";  
  System.Text.RegularExpressions.Regex   regex   =   new   System.Text.RegularExpressions.Regex(pattern);  
  str   =   regex.Replace(str,   "$1",   -1);  
  textBox2.Text   =   str;  
   
  这次的没有\[的问题了,并且多行的也可以正确处理,试试看Top

12 楼FlashElf(銘龘鶽)回复于 2005-01-24 22:26:21 得分 0

哥们你用  
  MessageBox.Show("3","3");MessageBox.Show("3","3");  
  看看  
  得到  
  "3","3");MessageBox.Show("3","3"  
  Top

13 楼FlashElf(銘龘鶽)回复于 2005-01-24 22:30:11 得分 0

在C#里是允许这样的  
  MessageBox.Show("3","3");MessageBox.Show("3","3");  
   
   
  虽然很少但也是可能的啊!Top

14 楼FlashElf(銘龘鶽)回复于 2005-01-24 22:31:13 得分 0

正则   能尽量向最小匹配进行匹配不?Top

15 楼yufenfeila(雨纷飞啦)回复于 2005-01-24 23:09:11 得分 80

大哥你这问题还没解决……100分真不好拿,呵呵  
  可以最小匹配,修改了一下:  
   
  string   str   =   textBox1.Text;  
  string   pattern   =   @"MessageBox.Show\(((.|\n)*?)\);";  
  System.Text.RegularExpressions.Regex   regex   =   new   System.Text.RegularExpressions.Regex(pattern);  
  str   =   regex.Replace(str,   "$1",   -1);  
  textBox2.Text   =   str;Top

16 楼cnhgj(戏子) (没时间练太极)回复于 2005-01-24 23:31:10 得分 20

string   str   =   richTextBox1.Text;  
  string   pattern   =   @"MessageBox.Show\((?<content>[\s\S]*?)\);";  
  System.Text.RegularExpressions.Regex   regex   =   new   System.Text.RegularExpressions.Regex(pattern);  
  foreach(System.Text.RegularExpressions.Match   m   in   regex.Matches(str))  
  MessageBox.Show(m.Groups["content"].Value);Top

17 楼FlashElf(銘龘鶽)回复于 2005-01-24 23:37:56 得分 0

这回还查不多,下面的贴有   400   分那等你去拿。  
  太晚了、明天验证好使不看看。  
   
  http://community.csdn.net/Expert/TopicView.asp?id=3750800  
  http://community.csdn.net/Expert/TopicView.asp?id=3341708Top

相关问题

  • 跪求asp压缩算法
  • 急求!!!! 小弟跪求 一算法
  • 跪求sql算法(在线等,急)
  • 跪求DES算法的原代码!!
  • 算法
  • 算法
  • 算法!
  • 算法
  • 算法...
  • 算法

关键词

  • .net
  • 算法
  • regex
  • regularexpressions
  • messagebox
  • 提示
  • show
  • pattern
  • str
  • textbox

得分解答快速导航

  • 帖主:FlashElf
  • yufenfeila
  • cnhgj

相关链接

  • CSDN .NET频道
  • .NET类图书
  • C#类图书
  • .NET类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo