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


Posted in PHP onOctober 22, 2016

如下所示:

<?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判断表达式中括号是否匹配的简单实例全部内容了,希望大家多多支持三水点靠木~

PHP 相关文章推荐
由php if 想到的些问题
Mar 22 PHP
php根据身份证号码计算年龄的实例代码
Jan 18 PHP
php的zip解压缩类pclzip使用示例
Mar 14 PHP
destoon整合UCenter图文教程
Jun 21 PHP
PHP中使用glob函数实现一句话删除某个目录下的所有文件
Jul 22 PHP
php实现可用于mysql,mssql,pg数据库操作类
Dec 13 PHP
php+html5基于websocket实现聊天室的方法
Jul 17 PHP
win平台安装配置Nginx+php+mysql 环境
Jan 12 PHP
php开发时容易忘记的一些技术细节
Feb 03 PHP
PHP实现权限管理功能示例
Sep 22 PHP
php实现微信支付之企业付款
May 30 PHP
Thinkphp5框架简单实现钩子(Hook)行为的方法示例
Sep 03 PHP
浅谈php数组array_change_key_case() 函数和array_chunk()函数
Oct 22 #PHP
PHP 常用时间函数资料整理
Oct 22 #PHP
详解PHP编码转换函数应用技巧
Oct 22 #PHP
PHP实现加密文本文件并限制特定页面的存取的效果
Oct 21 #PHP
PHP实现多关键字加亮功能
Oct 21 #PHP
PHP实现Google plus的好友拖拽分组效果
Oct 21 #PHP
PHP与服务器文件系统的简单交互
Oct 21 #PHP
You might like
php IP转换整形(ip2long)的详解
2013/06/06 PHP
PHP中each与list用法分析
2016/01/08 PHP
CI框架源码解读之URI.php中_fetch_uri_string()函数用法分析
2016/05/18 PHP
php微信公众账号开发之前五个坑(一)
2016/09/18 PHP
TP5框架model常见操作示例小结【增删改查、聚合、时间戳、软删除等】
2020/04/05 PHP
ExtJS 2.0实用简明教程之应用ExtJS
2009/04/29 Javascript
JavaScript为对象原型prototype添加属性的两种方式
2010/08/01 Javascript
ASP.NET jQuery 实例17 通过使用jQuery validation插件校验ListBox
2012/02/03 Javascript
用JQuery实现全选与取消的两种简单方法
2014/02/22 Javascript
JavaScript中提前声明变量或函数例子
2014/11/12 Javascript
Javascript发送AJAX请求实例代码
2016/08/21 Javascript
js中获取键盘事件的简单实现方法
2016/10/10 Javascript
基于jQuery实现顶部导航栏功能
2016/12/27 Javascript
微信小程序开发之相册选择和拍照详解及实例代码
2017/02/22 Javascript
html+javascript+bootstrap实现层级多选框全层全选和多选功能
2017/03/09 Javascript
JavaScript错误处理和堆栈追踪详解
2017/04/18 Javascript
Angular directive递归实现目录树结构代码实例
2017/05/05 Javascript
Javascript(es2016) import和require用法和区别详解
2017/08/11 Javascript
EasyUI在Panel上动态添加LinkButton按钮
2017/08/11 Javascript
原生JS检测CSS3动画是否结束的方法详解
2019/01/27 Javascript
vue-dplayer 视频播放器实例代码
2019/11/08 Javascript
VUE实时监听元素距离顶部高度的操作
2020/07/29 Javascript
JavaScript实现随机点名小程序
2020/10/29 Javascript
[50:45]2018DOTA2亚洲邀请赛 4.6 淘汰赛 VP vs TNC 第一场
2018/04/10 DOTA
Win7上搭建Cocos2d-x 3.1.1开发环境
2014/07/03 Python
django批量导入xml数据
2016/10/16 Python
Pycharm学习教程(1) 定制外观
2017/05/02 Python
pytorch训练imagenet分类的方法
2018/07/27 Python
对python遍历文件夹中的所有jpg文件的实例详解
2018/12/08 Python
Python TestCase中的断言方法介绍
2019/05/02 Python
巧用CSS3的calc()宽度计算做响应模式布局的方法
2018/03/22 HTML / CSS
大学军训感言1000字
2014/02/25 职场文书
《称象》教学反思
2014/04/25 职场文书
税务干部群众路线教育实践活动自我剖析材料
2014/09/21 职场文书
医德医风学习心得体会
2016/01/25 职场文书
如何计划开一家便利店?
2019/07/31 职场文书