- <?php
- function isValid($expstr) {
- $temp = array();
- for ($i=0; $i<strlen($expstr); $i++) {
- $ch = $expstr[$i];
- switch($ch) {
- case '(':
- array_push($temp, '(');
- break;
- case ')':
- if (emptyempty($temp) || array_pop($temp) != '(') {
- return "缺少左括号(";
- }
- }
- }
- return emptyempty($temp) == true ? "表达式匹配" : "缺少右括号)";
- }
- $expstrA = "(1+3(6*4)-(2+3))()(";
- $expstrB = "(1+3(6*4)-(2+3))()";
- $expstrC = "(1+3(6*4)-(2+3)))";
- echo isValid($expstrA);
- echo "<br>";
- echo isValid($expstrB);
- echo "<br>";
- echo isValid($expstrC);
-
?>
结果:
- 缺少右括号)
- 表达式匹配
-
缺少左括号(
本文介绍了一个使用PHP编写的简单算法,该算法用于检查字符串中的括号是否正确配对。通过实例演示了如何处理不同情况下的括号匹配问题。

被折叠的 条评论
为什么被折叠?



