Heim  >  Artikel  >  Backend-Entwicklung  >  Ein einfaches Beispiel dafür, wie PHP beurteilt, ob die Klammern im Ausdruck übereinstimmen

Ein einfaches Beispiel dafür, wie PHP beurteilt, ob die Klammern im Ausdruck übereinstimmen

巴扎黑
巴扎黑Original
2017-05-26 16:06:311256Durchsuche

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 &#39;(&#39;: 
        array_push($temp, &#39;(&#39;); 
        break; 
      case &#39;)&#39;: 
        if (empty($temp) || array_pop($temp) != &#39;(&#39;) { 
          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!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn