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 相关文章推荐
JAVA/JSP学习系列之四
Oct 09 PHP
关于PHP5 Session生命周期介绍
Mar 02 PHP
用php制作简单分页(从数据库读取记录)的方法详解
May 04 PHP
php读取mysql的简单实例
Jan 15 PHP
ThinkPHP使用心得分享-ThinkPHP + Ajax 实现2级联动下拉菜单
May 15 PHP
php中count获取多维数组长度的方法
Nov 03 PHP
php压缩和解压缩字符串的方法
Mar 14 PHP
php实现基于openssl的加密解密方法
Sep 30 PHP
phpmailer绑定邮箱的实现方法
Dec 01 PHP
PHP实现微信商户支付企业付款到零钱功能
Sep 30 PHP
PHP的mysqli_thread_id()函数讲解
Jan 24 PHP
PHP实现基本留言板功能原理与步骤详解
Mar 26 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
收听困难?教您超简便短波广播抗干扰方法!
2021/03/01 无线电
php获取字段名示例分享
2014/03/03 PHP
Thinkphp 中 distinct 的用法解析
2016/12/14 PHP
Laravel 自动转换长整型雪花 ID 为字符串的实现
2020/10/27 PHP
Prototype 学习 工具函数学习($A方法)
2009/07/12 Javascript
jquery imgareaselect 使用利用js与程序结合实现图片剪切
2009/07/30 Javascript
jquery 学习之二 属性(html()与html(val))
2010/11/25 Javascript
js 代码优化点滴记录
2012/02/19 Javascript
jquery 事件冒泡的介绍以及如何阻止事件冒泡
2012/12/25 Javascript
jquery用get实现ajax在ie里面刷新不进入后台解决方法
2013/08/12 Javascript
js 单击式的下拉菜单效果实例
2013/08/13 Javascript
json传值以及ajax接收详解
2016/05/24 Javascript
教你用十行node.js代码读取docx的文本
2017/03/08 Javascript
Vue异步组件使用详解
2017/04/08 Javascript
js实现适配不同的屏幕大小
2017/04/10 Javascript
nodejs微信扫码支付功能实现
2018/02/17 NodeJs
微信小程序实现动态显示和隐藏某个控件功能示例
2018/12/14 Javascript
Vue.js 无限滚动列表性能优化方案
2019/12/02 Javascript
[49:40]2018DOTA2亚洲邀请赛小组赛 A组加赛 TNC vs Newbee
2018/04/03 DOTA
Python使用MONGODB入门实例
2015/05/11 Python
Django中使用locals()函数的技巧
2015/07/16 Python
简单谈谈python中的lambda表达式
2018/01/19 Python
Python实现按照指定要求逆序输出一个数字的方法
2018/04/19 Python
用Python实现筛选文件脚本的方法
2018/10/27 Python
centos 安装Python3 及对应的pip教程详解
2019/06/28 Python
django中forms组件的使用与注意
2019/07/08 Python
Django结合ajax进行页面实时更新的例子
2019/08/12 Python
计算机大学生的自我评价
2013/10/15 职场文书
法学研究生自我鉴定范文
2013/12/04 职场文书
医师定期考核实施方案
2014/05/07 职场文书
工作期间打牌检讨书范文
2014/11/20 职场文书
优秀党员个人总结
2015/02/14 职场文书
2015年干部教育培训工作总结
2015/05/15 职场文书
初中团支书竞选稿
2015/11/21 职场文书
创业计划书之电动车企业
2019/10/11 职场文书
css清除浮动clearfix:after的用法详解(附完整代码)
2023/05/21 HTML / CSS