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 相关文章推荐
一个用于MySQL的PHP XML类
Oct 09 PHP
建立文件交换功能的脚本(二)
Oct 09 PHP
用函数读出数据表内容放入二维数组
Oct 09 PHP
Windows2003 下 MySQL 数据库每天自动备份
Dec 21 PHP
删除数组元素实用的PHP数组函数
Aug 18 PHP
PHP函数学习之PHP函数点评
Jul 05 PHP
php禁止浏览器使用缓存页面的方法
Nov 07 PHP
CentOS6.5 编译安装lnmp环境
Dec 21 PHP
php随机显示指定文件夹下图片的方法
Jul 13 PHP
Yii操作数据库实现动态获取表名的方法
Mar 29 PHP
PHP使用gearman进行异步的邮件或短信发送操作详解
Feb 27 PHP
利用PHP内置SERVER开启web服务(本地开发使用)
Mar 09 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 中的面向对象编程:通向大型 PHP 工程的办法
2006/12/03 PHP
php进行支付宝开发中return_url和notify_url的区别分析
2014/12/22 PHP
PHP使用数组依次替换字符串中匹配项
2016/01/08 PHP
PHP实现的折半查找算法示例
2017/12/19 PHP
php实现快速对二维数组某一列进行组装的方法小结
2019/12/04 PHP
javascript 二进制运算技巧解析
2012/11/27 Javascript
js控制浏览器全屏示例代码
2014/02/20 Javascript
浅谈 jQuery 事件源码定位问题
2014/06/18 Javascript
JQuery跳出each循环的方法
2015/04/16 Javascript
JavaScript数组对象赋值用法实例
2015/08/04 Javascript
浅析BootStrap模态框的使用(经典)
2016/04/29 Javascript
js 函数式编程学习笔记
2017/03/25 Javascript
vue2.0与bootstrap3实现列表分页效果
2017/11/28 Javascript
eslint 的三大通用规则详解
2019/05/16 Javascript
[36:33]Ti4 循环赛第四日 附加赛NEWBEE vs Mouz
2014/07/13 DOTA
[36:22]VP vs Serenity 2018国际邀请赛小组赛BO2 第一场 8.16
2018/08/17 DOTA
Python版的文曲星猜数字游戏代码
2013/09/02 Python
提升Python程序运行效率的6个方法
2015/03/31 Python
Python功能键的读取方法
2015/05/28 Python
Python使用urllib2模块实现断点续传下载的方法
2015/06/17 Python
Jupyter安装nbextensions,启动提示没有nbextensions库
2020/04/23 Python
Python列表解析配合if else的方法
2018/06/23 Python
为何人工智能(AI)首选Python?读完这篇文章你就知道了(推荐)
2019/04/06 Python
pandas DataFrame 行列索引及值的获取的方法
2019/07/02 Python
Python assert语句的简单使用示例
2019/07/28 Python
Python如何存储数据到json文件
2020/03/09 Python
浅谈keras中的后端backend及其相关函数(K.prod,K.cast)
2020/06/29 Python
用python获取txt文件中关键字的数量
2020/12/24 Python
css3 盒模型以及box-sizing属性全面了解
2016/09/20 HTML / CSS
全球最受追捧的运动服品牌领先数字目的地:Stylerunner
2020/11/25 全球购物
大学生求职简历的自我评价
2013/10/21 职场文书
化工工艺设计求职信
2014/06/25 职场文书
焦裕禄精神心得体会
2014/09/02 职场文书
2015年妇联工作总结范文
2015/04/22 职场文书
立案决定书范文
2015/06/24 职场文书
解决Mysql多行子查询的使用及空值问题
2022/01/22 MySQL