2010-08-20 7 views
-2

문자열에서 중복 단어를 제거하고 싶습니다. 예를 들어PHP에서 문자열의 중복 단어를 제거하려면

:

$str="oneone";

I 하나로 중복 표시를 제거 할

공백없이.

누구나 해결책을 제안 할 수 있습니까?

+1

가능한 중복 같은 (http://stackoverflow.com/questions/2613063/remove-duplicate을 -from-string-in-php) –

+1

단어 경계가 없으면 "queuequeue"가 무엇인지를 정의하기가 어려울 것입니다. 또한, 단어 경계가 없기 때문에 정확하게 연결된 질문의 중복이 아닙니다. 공백없이 – deceze

+1

? "o"는 "one"과 "one"과 같은 다른 "o"와 중복되기 때문에 최소 단어 길이를 정의해야합니다. –

답변

2

나는 당신이 무엇을 요구하고 있는지 잘 모르겠습니다. 다른 사람들이 말했듯이, 모든 중복 물을 제거하는 것은 어려울 것입니다. 그러나 단지 중복 만 포함하는 단어를 원할 경우 (예를 들어, "oneone"을 "one"로 변경하고 "everyoneone"은 그대로두기를 원할 때) 가장 간단한 방법은 짝수 단어를 확인하는 것입니다 글자 수. 후반은 전반과 같습니다.

분할 단어에 텍스트, 각 단어에 대해 [PHP에서 문자열에서 중복을 제거]의

$length = strlen($word); 
if (! $length % 2 && substr($word, 0, $length/2) == substr($word, ($length/2) + 1, $length /2)) 
    $word = substr($word, 0, $length/2); 
관련 문제