Der folgende Editor zeigt Ihnen ein einfaches Beispiel dafür, wie PHP beurteilt, ob die Klammern im Ausdruck übereinstimmen. Der Herausgeber findet es ziemlich gut, deshalb werde ich es jetzt mit Ihnen teilen und es allen als Referenz geben. Folgen wir dem Herausgeber, um einen Blick darauf zu werfen
wie folgt:
<?php /** * title: 判断表达式中括号是否匹配 * Description: () 匹配 )(不匹配 利用压栈和出栈 * @author Mr Lv */ function isValid($expstr) { $temp = array(); for ($i=0; $i<strlen($expstr); $i++) { $ch = $expstr[$i]; switch($ch) { case '(': array_push($temp, '('); break; case ')': if (empty($temp) || array_pop($temp) != '(') { return "缺少左括号("; } } } return empty($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); ?>
Seiteninformationen:
缺少右括号) 表达式匹配 缺少左括号(
Das obige ist der detaillierte Inhalt vonEin einfaches Beispiel dafür, wie PHP beurteilt, ob die Klammern im Ausdruck übereinstimmen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!