php中最简单的字符串匹配算法


Posted in PHP onDecember 16, 2014

本文实例讲述了php中最简单的字符串匹配算法。分享给大家供大家参考。具体实现方法如下:

<?php 

/* 

最简单字符串匹配算法php实现方式 

 

T: ababcabc 

P: abc 

 

0.          1.          2. 

ababcabc    ababcabc    ababcabc 

|||          |||          ||| 

abc          abc          abc 

(X)          (X)          (O) 

 

3.          4.          5. 

ababcabc    ababcabc    ababcabc 

    

|||          |||          ||| 

    

abc          abc          abc 

    

(X)          (X)          (O) 

*/ 

 

$str="ababcabc"; 

$search="abc"; 

 

$strlen=strlen($str); 

$searchlen=strlen($search); 

 

//1.遍历$str字符串 

for($i=0;$i<$strlen;$i++){ 

    if($i+$searchlen>$strlen){ 

        echo '超出长度';break; 

    } 

 

    $match=true; 

 

     

//2.遍历要搜索的字符串$search,进行对比 

    for($j=0;$j<$searchlen;$j++){ 

 

        if($str[$i+$j]!=$search[$j]){ 

            $match=false; 

            break; 

        } 

        $k=$i+$j; 

        if($match){ 

            if($j==$searchlen-1){ 

                echo "{$str}第{$i}个位置开始为{$search}\n";break; 

            }

        } 

    } 

} 

?>

希望本文所述对大家的PHP程序设计有所帮助。

PHP 相关文章推荐
PHP缩略图等比例无损压缩,可填充空白区域补充色
Jun 10 PHP
有关PHP中MVC的开发经验分享
May 17 PHP
PHP gbk环境下json_dencode传送来的汉字
Nov 13 PHP
PHP动态生成javascript文件的2个例子
Apr 11 PHP
yii的CURD操作实例详解
Dec 04 PHP
PHP+jQuery翻板抽奖功能实现
Oct 19 PHP
PHP加密3DES报错 Call to undefined function: mcrypt_module_open() 如何解决
Apr 17 PHP
PHP目录操作实例总结
Sep 27 PHP
php 微信公众平台开发模式实现多客服的实例代码
Nov 07 PHP
使用PHP下载CSS文件中的所有图片【几行代码即可实现】
Dec 14 PHP
PHP严重致命错误处理:php Fatal error: Cannot redeclare class or function
Feb 05 PHP
thinkPHP3.2.2框架行为扩展及demo示例
Jun 19 PHP
PHP实现将科学计数法转换为原始数字字符串的方法
Dec 16 #PHP
php输出金字塔的2种实现方法
Dec 16 #PHP
smarty缓存用法分析
Dec 16 #PHP
yii2.0之GridView自定义按钮和链接用法
Dec 15 #PHP
smarty表格换行实例
Dec 15 #PHP
PHP使用xmllint命令处理xml与html的方法
Dec 15 #PHP
php使用pdo连接报错Connection failed SQLSTATE的解决方法
Dec 15 #PHP
You might like
php 获取客户端的真实ip
2009/11/30 PHP
如何在php中正确的使用json
2013/08/06 PHP
微信支付之JSAPI公众号支付详解
2019/05/15 PHP
关于恒等于(===)和非恒等于(!==)
2007/08/20 Javascript
js实现漂浮回顶部按钮实例
2015/05/06 Javascript
jquery实现图片预加载
2015/12/25 Javascript
JavaScript下拉菜单功能实例代码
2017/03/01 Javascript
js用类封装pop弹窗组件
2017/10/08 Javascript
vue学习之mintui picker选择器实现省市二级联动示例
2017/10/12 Javascript
JavaScript函数的4种调用方法实例分析
2019/03/05 Javascript
微信小程序文章详情页跳转案例详解
2019/07/09 Javascript
vue3.0中的双向数据绑定方法及优缺点
2019/08/01 Javascript
js贪心算法 钱币找零问题代码实例
2019/09/11 Javascript
vue之debounce属性被移除及处理详解
2019/11/13 Javascript
Vue2.x-使用防抖以及节流的示例
2021/03/02 Vue.js
linux系统使用python获取内存使用信息脚本分享
2014/01/15 Python
python获取指定路径下所有指定后缀文件的方法
2015/05/26 Python
浅谈django model的get和filter方法的区别(必看篇)
2017/05/23 Python
Python中的id()函数指的什么
2017/10/17 Python
python使用requests模块实现爬取电影天堂最新电影信息
2019/04/03 Python
python障碍式期权定价公式
2019/07/19 Python
tensorflow 获取checkpoint中的变量列表实例
2020/02/11 Python
python实现低通滤波器代码
2020/02/26 Python
python 爬虫如何正确的使用cookie
2020/10/27 Python
HTML5制作表格样式
2016/11/15 HTML / CSS
德国柯吉澳趣味家居:Koziol
2017/08/24 全球购物
企业党的群众路线教育实践活动领导班子对照检查材料
2014/09/25 职场文书
党的群众路线教育实践活动查摆问题自查报告
2014/10/10 职场文书
2015年全国科普日活动总结
2015/03/23 职场文书
建筑质检员岗位职责
2015/04/08 职场文书
劳动争议仲裁代理词
2015/05/25 职场文书
先进个人主要事迹范文
2015/11/04 职场文书
2016年感恩教师节校园广播稿
2015/12/18 职场文书
教师远程培训心得体会
2016/01/09 职场文书
导游词之任弼时故居
2020/01/07 职场文书
浅谈Redis 中的过期删除策略和内存淘汰机制
2022/04/03 Redis