PHP判断表达式中括号是否匹配的简单实例

所属分类: 网络编程 / PHP编程 阅读数: 1842
收藏 0 赞 0 分享

如下所示:

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

页面信息:

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

以上就是小编为大家带来的PHP判断表达式中括号是否匹配的简单实例全部内容了,希望大家多多支持脚本之家~

更多精彩内容其他人还在看

利用Fix Rss Feeds插件修复WordPress的Feed显示错误

这篇文章主要介绍了利用Fix Rss Feeds插件修复WordPress的Feed显示错误的方法,需要的朋友可以参考下
收藏 0 赞 0 分享

WordPress中给文章添加自定义字段及后台编辑功能区域

这篇文章主要介绍了WordPress中给文章添加自定义字段及后台编辑区域的相关函数,分别简单讲了add_post_meta和add_meta_box 的用法,需要的朋友可以参考下
收藏 0 赞 0 分享

学习php设计模式 php实现模板方法模式

这篇文章主要介绍了php设计模式中的模板方法模式,使用php实现模板方法模式,感兴趣的小伙伴们可以参考一下
收藏 0 赞 0 分享

UPUPW 更新 64 位 Apache 系列 PHP 7.0 正式版

这篇文章主要介绍了UPUPW 更新 64 位 Apache 系列 PHP 7.0 正式版的相关资料,需要的朋友可以参考下
收藏 0 赞 0 分享

详解PHP的Yii框架中日志的相关配置及使用

这篇文章主要介绍了PHP的Yii框架中日志的相关配置及使用,包括bug追踪以及数据库查询耗时记录等,需要的朋友可以参考下
收藏 0 赞 0 分享

thinkPHP中create方法与令牌验证实例浅析

这篇文章主要介绍了thinkPHP中create方法与令牌验证,以一个简单实例形式分析了thinkPHP中create方法与令牌验证增加表单安全性的相关技巧,代码备有详尽注释说明,需要的朋友可以参考下
收藏 0 赞 0 分享

Linux系统下使用XHProf和XHGui分析PHP运行性能

这篇文章主要介绍了Linux系统下使用XHProf和XHGui分析PHP运行性能的方法,该方案支持Apache与Nginx服务器及多种数据库环境,需要的朋友可以参考下
收藏 0 赞 0 分享

PHP的Yii框架的常用日志操作总结

这篇文章主要介绍了PHP的Yii框架的常用日志操作总结,包括消息的过略和格式化等基本内容,需要的朋友可以参考下
收藏 0 赞 0 分享

PHP判断手机是IOS还是Android

这篇文章主要介绍了PHP判断手机是IOS还是Android的三个示例,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
收藏 0 赞 0 分享

学习php设计模式 php实现观察者模式(Observer)

这篇文章主要介绍了php设计模式中的观察者模式,使用php实现观察者模式,感兴趣的小伙伴们可以参考一下
收藏 0 赞 0 分享
查看更多