Maison  >  Article  >  développement back-end  >  Un exemple simple de PHP jugeant si les crochets dans l'expression correspondent

Un exemple simple de PHP jugeant si les crochets dans l'expression correspondent

巴扎黑
巴扎黑original
2017-05-26 16:06:311213parcourir

L'éditeur suivant vous apportera un exemple simple de PHP jugeant si les crochets dans l'expression correspondent. L'éditeur pense que c'est plutôt bien, alors je vais le partager avec vous maintenant et le donner comme référence. Suivons l'éditeur pour jeter un oeil

comme suit :


<?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); 
?>

Informations sur la page :


缺少右括号) 
表达式匹配 
缺少左括号(

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn