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绘制在图片上的正余弦曲线
Jun 08 PHP
PHP中数组定义的几种方法
Sep 01 PHP
PHP实现对文本数据库的常用操作方法实例演示
Jul 04 PHP
CodeIgniter中实现泛域名解析
Jul 19 PHP
PHP自定session保存路径及删除、注销与写入的方法
Nov 18 PHP
简单谈谈PHP中strlen 函数
Feb 27 PHP
PHP CURL post数据报错 failed creating formpost data
Oct 16 PHP
phpmailer绑定邮箱的实现方法
Dec 01 PHP
php自定义扩展名获取函数示例
Dec 12 PHP
PHP实现截取中文字符串不出现?号的解决方法
Dec 29 PHP
解决laravel5.4下的group by报错的问题
Oct 16 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
判“新”函数:得到今天与明天的秒数
2006/10/09 PHP
Access数据库导入Mysql的方法之一
2006/10/09 PHP
phpmyadmin 3.4 空密码登录的实现方法
2010/05/29 PHP
PHP使用xmllint命令处理xml与html的方法
2014/12/15 PHP
php+mysqli使用面向对象方式更新数据库实例
2015/01/29 PHP
thinkphp 字母函数详解T/I/N/D/M/A/R/U
2017/04/03 PHP
php 生成加密公钥加密私钥实例详解
2017/06/16 PHP
PHP有序表查找之插值查找算法示例
2018/02/10 PHP
Laravel模型事件的实现原理详解
2018/03/14 PHP
PHP使用mysqli同时执行多条sql查询语句的实例
2019/03/22 PHP
javascript中的对象和数组的应用技巧
2007/01/07 Javascript
Extjs NumberField后面加单位实现思路
2013/07/30 Javascript
JScript分割字符串示例代码
2013/09/04 Javascript
jquery操作cookie插件分享
2014/01/14 Javascript
Javascript 实现复制(Copy)动作方法大全
2014/06/20 Javascript
jQuery中$.click()无效问题分析
2015/01/29 Javascript
移动手机APP手指滑动切换图片特效附源码下载
2015/11/30 Javascript
探讨JavaScript语句的执行过程
2016/01/28 Javascript
jQuery绑定事件-多种实现方式总结
2016/05/09 Javascript
详解angular2实现ng2-router 路由和嵌套路由
2017/03/24 Javascript
JavaScript常用截取字符串的三种方式用法区别实例解析
2018/05/15 Javascript
Vue.js 中取得后台原生HTML字符串 原样显示问题的解决方法
2018/06/10 Javascript
微信小程序之 catalog 切换实现解析
2019/09/12 Javascript
vue中对象数组去重的实现
2020/02/06 Javascript
[57:38]2018DOTA2亚洲邀请赛3月30日 小组赛A组 OpTic VS OG
2018/03/31 DOTA
python+opencv实现霍夫变换检测直线
2020/10/23 Python
python解压zip包中文乱码解决方法
2020/11/27 Python
ASP.NET Core中的配置详解
2021/02/05 Python
详解CSS3原生支持div铺满浏览器的方法
2018/08/30 HTML / CSS
html5中去掉input type date默认样式的方法
2018/09/06 HTML / CSS
流行文化收藏品:Sideshow(DC漫画,星球大战,漫威)
2019/03/17 全球购物
经验丰富大学生村干部自我鉴定
2014/01/22 职场文书
美德好少年主要事迹
2014/01/29 职场文书
小学生演讲稿大全
2014/04/25 职场文书
贷款担保书范文
2014/05/13 职场文书
MySQL 字符集 character
2022/05/04 MySQL