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项目的方法
Oct 09 PHP
提升PHP执行速度全攻略
Oct 09 PHP
将OICQ数据转成MYSQL数据
Oct 09 PHP
php面向对象全攻略 (四)构造方法与析构方法
Sep 30 PHP
关于php curl获取301或302转向的网址问题的解决方法
Jun 02 PHP
php中设置index.php文件为只读的方法
Feb 06 PHP
php中文乱码怎么办如何让浏览器自动识别utf-8
Jan 15 PHP
PHP实现算式验证码和汉字验证码实例
Mar 09 PHP
PHP中创建和验证哈希的简单方法实探
Jul 06 PHP
php分页原理 分页代码 分页类制作教程
Sep 23 PHP
PHP+jQuery实现滚屏无刷新动态加载数据功能详解
May 04 PHP
php下载远程大文件(获取远程文件大小)的实例
Jun 17 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模拟post行为代码总结(POST方式不是绝对安全)
2012/02/22 PHP
hadoop常见错误以及处理方法详解
2013/06/19 PHP
PHP的openssl加密扩展使用小结(推荐)
2016/07/18 PHP
深入理解PHP类的自动载入机制
2016/09/16 PHP
PHP设计模式之适配器模式原理与用法分析
2018/04/25 PHP
漂亮的jquery提示效果(仿腾讯弹出层)
2013/02/05 Javascript
javascript firefox 自动加载iframe 自动调整高宽示例
2013/08/27 Javascript
一个html5播放视频的video控件只支持android的默认格式mp4和3gp
2014/05/08 Javascript
JS获取iframe中marginHeight和marginWidth属性的方法
2015/04/01 Javascript
详解AngularJS 模态对话框
2016/04/07 Javascript
JavaScript的new date等日期函数在safari中遇到的坑
2016/10/24 Javascript
微信小程序 使用腾讯地图SDK详解及实现步骤
2017/02/28 Javascript
Kotlin学习第一步 kotlin语法特性
2017/05/25 Javascript
Angular实现双向折叠列表组件的示例代码
2017/11/21 Javascript
详解Vue+ElementUI从零开始搭建自己的网站(一、环境搭建)
2019/04/30 Javascript
微信小程序实现购物车代码实例详解
2019/08/29 Javascript
javascript设计模式 ? 模板方法模式原理与用法实例分析
2020/04/23 Javascript
OpenLayers3实现鼠标移动显示坐标
2020/09/25 Javascript
python计算方程式根的方法
2015/05/07 Python
利用python画一颗心的方法示例
2017/01/31 Python
python如何通过twisted实现数据库异步插入
2018/03/20 Python
关于python列表增加元素的三种操作方法
2018/08/22 Python
Python使用matplotlib绘制随机漫步图
2018/08/27 Python
python通过robert、sobel、Laplace算子实现图像边缘提取详解
2019/08/21 Python
python super的使用方法及实例详解
2019/09/25 Python
Python 时间戳之获取整点凌晨时间戳的操作方法
2020/01/28 Python
细说CSS3中的选择符
2008/10/17 HTML / CSS
HTML5之HTML元素扩展(上)—新增加的元素及使用概述
2013/01/31 HTML / CSS
Carrs Silver官网:英国著名的银器品牌
2020/08/29 全球购物
团支部推优材料
2014/05/21 职场文书
工作疏忽检讨书500字
2014/10/26 职场文书
一次性工伤赔偿协议书范本
2014/11/25 职场文书
2014保险公司个人工作总结
2014/12/09 职场文书
幼儿教师个人总结
2015/02/05 职场文书
加薪通知
2015/04/25 职场文书
中学生打架《检讨书》范文
2019/08/12 职场文书