2个回答
展开全部
代码如下(经测通过):
<?php$str="((1+1)*3.3)/10-12+(1+1)";if(preg_match("/[\+\-\*\/\.]{2}|[^\+\-\*\/\(\)\d\.]+/i", $str, $matches)){ echo '非法算式';} else { if(substr_count($str,"(")==substr_count($str,")")){ echo '合法算式'; } else { echo '括号不匹配'; }}?>
判断str里是否存在连续运算符、小数点或运算符、括号、数字以外的字符
若存在则非法
若不存在则判断str里( 和 )数量是否一致
打字不易,如满意,望采纳。
<?php$str="((1+1)*3.3)/10-12+(1+1)";if(preg_match("/[\+\-\*\/\.]{2}|[^\+\-\*\/\(\)\d\.]+/i", $str, $matches)){ echo '非法算式';} else { if(substr_count($str,"(")==substr_count($str,")")){ echo '合法算式'; } else { echo '括号不匹配'; }}?>
判断str里是否存在连续运算符、小数点或运算符、括号、数字以外的字符
若存在则非法
若不存在则判断str里( 和 )数量是否一致
打字不易,如满意,望采纳。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询