本文实例讲述了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实现方式
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程序设计有所帮助。