Ben out-of-the-box biliyorum bir şey yok. ama bunu yapmak gerekir:
function merge_overlap($left, $right) {
// continue checking larger portions of $right
for($l = 1; $l < strlen($right); $l++) {
// if we no longer have a matching subsection return what's left appended
if(strpos($left, substr($right, 0, $l)) === false) {
return $left . substr($right, $l - 1);
}
}
// no overlap, return all
return $left . $right;
}
EDIT:. Had bir OBO, güncelleştirilmiş strike>
GÜNCELLEME: Bu strpos () sol yolunda yerde metnin bölümlerini eşleştirme, çözüm değildi, kuyruk karşı karşılaştırmak gerekir.
İşte benim yaklaşımı için doğru bir uygulama:
function merge_overlap($left, $right) {
$l = strlen($right);
// keep checking smaller portions of right
while($l > 0 && substr($left, $l * -1) != substr($right, 0, $l))
$l--;
return $left . substr($right, $l);
}