寻找最长不含有重复字符的子串
直接上代码
<?php
//寻找最长不含有重复字符的子串
$str='abcabcbdc';
$str=preg_split('/(?<!^)(?!$)/u',$str);//中文字符识别
$length=0;//长度
$start=0;//分段的起始位置
$arr=[];//更新每个值得键
foreach ($str as $k=>$v){
if(@$arr[$v]!==null&&$arr[$v]>=$start){
$start=$arr[$v]+1;
}
if(($k-$start+1)>$length){
$length=$k-$start+1;
}
$arr[$v]=$k;
}
var_dump($length);
die();