PHP判断表达式中括号是否匹配的简单实例
正则表达式描述了一种字符串匹配的模式,可以用来检查一个串是否含有某种子串、将匹配的子串做替换或者从某个串中取出符合某个条件的子串等。下面小编就为大家带来一篇PHP判断表达式中括号是否匹配的`简单实例。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。
如下所示:
<?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判断表达式中括号是否匹配的简单实例全部内容了,希望对大家工作有所帮助!
-
tp搜索时首页分页和搜索页保持条件分页的方法
在做搜索查询时突然发现在首页用的`分页代码在搜索页使用时出现错误,首页分页代码(代码中标注start与end部分为分页代码),下面是由本站小编为大家整理的Thinkphp搜索时首页分页和搜索页保持条件分页的方法,喜欢的可以收藏一下!了解更多详情资讯,请关注应届毕业生...
-
Yii2创建表单(ActiveForm)方法
Yii2创建表单(ActiveForm)的方法,结合实例形式详细分析了Yii创建表单的详细步骤及相关函数与属性的使用技巧,需要的朋友可以参考下.由于表单涉及到一些验证方面的信息,属性设置又比较多、比较复杂,所以哪里有什么不正确的地方请留言指点目录表单的生成表单中的方...
-
用PHP遍历目录下的全部文件
项目中有这么一个需求,需要遍历某个文件夹(目录)下的'所有文件。下面是解决这个问题所写的PHP代码,欢迎阅读,更多消息请关注应届毕业生网。第一种实现办法是用dir返回对象,第二种实现办法:用readdir()函数。/**********************一个简单的目录递归函数第一种实...
-
PHP实现获取FLV文件的时间
主要介绍了PHP实现获取FLV文件的时间,本文直接给出实现代码和使用方法,需要的朋友可以参考下。PHP如何获取FLV文件时间呢,答案是fopen文件后查看FLV文件是HEX数据,并转换为number。复制代码代码如下:<?phpfunctionBigEndian2Int($byte_word,$signed=false){$in...