>백엔드 개발 >PHP 튜토리얼 > 关于similar_text的点子

关于similar_text的点子

WBOY
WBOY원래의
2016-06-13 13:16:101020검색

关于similar_text的想法
今天在群里就similar_text起了分歧,百度良久无果,最后还是自己写的代码猜测的结果,但是不知道正确与否,所以发出来希望大家指导一下
比如:similar_text("Hello World","Hello Peter");
w3cschool给出的结果是7,但是开始认为应该是6因为匹配的相同位置只能是6
但是后来猜测不按位置就是7了。
然后就不按位置比较应该怎么比,又研究起来
最后得到一个还是不太统一但相对过的去的就是:
每个字符依次的比较,比较后就跳到下一个字符,不过第二个字符串应该是找到后的下一个位置。
比如 similar_text("021312","301221");
1.匹配第1个字符串的第0个字符0在第2个的第1个位置匹配到了
2.匹配第1个字符串的第1个字符2,但是要在第1次的匹配的位置也就是0的后面开始匹配在第二个字符串的第3个位置
2.匹配第1个字符串的第2个字符1,但是要在第2次的匹配的位置也就是第3个字符2的后面开始匹配在第二个字符串的第5个位置
这时第二个字符串已经匹配完了所以结束,最后得出的结果是3
不知道,这样分析对不对,请大神们不吝赐教

------解决方案--------------------
看一下源码不就知道了?
如果不想找的话,这里就有 http://topic.csdn.net/u/20120811/20/B0FE6AE4-4970-458E-8CE3-2D4793438D2E.html
------解决方案--------------------
相当于这样一个过程

PHP code
$a = "Hello World";
$b = "Hello Peter";
echo similar_text($a, $b), '<br>';
$i = 0;
$j = 0;
while($i<strlen if echo continue for break strlen class="clear">
                 
              
              
        
            </strlen>
성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.