求教一个正则表达式 如何判断一个字符串是一个算术表达式;例如:TpnCount*3, 4/7, WQ*TpnCount/4;其中TpnCount,WQ是变量谢谢 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 private bool Check(string s) { int i = 0; System.Text.StringBuilder sb = new StringBuilder(); sb.Append(@"\w+"); i+=s.Split('+').Length-1; i+=s.Split('-').Length-1; i+=s.Split('/').Length-1; i+=s.Split('*').Length-1; for(int j = 0;j<i;j++) { sb.Append(@"(\+|\-|\*|\/)\w+"); } sb.Append(@"\w+$"); System.Text.RegularExpressions.Regex Reg = new System.Text.RegularExpressions.Regex(sb.ToString()); if(Reg.IsMatch(s)) { return true; } else { return false; } ^((([a-zA-Z0-9]+[+\-*/][a-zA-Z0-9]+)([+\-*/]+[a-zA-Z0-9]+)*)|[a-zA-Z0-9]+)$这个正则表达式可以满足+-*/四则运算的检验。但是,不包含(),正则表达式也排除" "空格的监测,空格你可以对需要检验的字符串作预处理去掉。正则表达式,无法包含()检验的,因为()在运算中有递归的含义,而正则表达式无法进行递归,所以单纯的正则表达式不能检测()。或者是我理解错误?正则表达式也能递归? MVC 后台获取参数 这个网站的与管理员对话是如何实现的,感觉很类似于聊天了,这个东西很复杂吧 散分!兼小调查:asp.net网站的界面怎么做? 更新首頁連接的問題 一个地址对应多个应用程序 100分!如何将这两个asp函数改写为asp.net(vb.net)? 向数据库提交变量。。。sql语句错误。。help。。 DataGrid分页问题. 如何使DataList生成的东西即不用<br>分开,又不放在他生成的表格里面? 【求助】如何获取frameset中其他页的状态? 求教一个正则表达式(如何解析一个select 语句的语法是否合法) executeNoQuery插入记录出错,请大家来指点
{
int i = 0;
System.Text.StringBuilder sb = new StringBuilder();
sb.Append(@"\w+");
i+=s.Split('+').Length-1;
i+=s.Split('-').Length-1;
i+=s.Split('/').Length-1;
i+=s.Split('*').Length-1;
for(int j = 0;j<i;j++)
{
sb.Append(@"(\+|\-|\*|\/)\w+");
}
sb.Append(@"\w+$");
System.Text.RegularExpressions.Regex Reg = new System.Text.RegularExpressions.Regex(sb.ToString());
if(Reg.IsMatch(s))
{
return true;
}
else
{
return false;
}