1

是否可以从此字符串中检测到重复的单词:

$string = "dogdog";

我只想返回“str”而不是“strstr”

我尝试了一些好的解决方案,但它并不能真正做到我想要的那样:

$string = "dogdog";
$length = strlen($string) / 2;
 echo substr($string, $length);

我希望从一个大句子中检测到它($string =“ dogdog something dogdog else bla bla, something, (something ); something"; )....字符串包含2个重复的正确单词,没有分隔,如何检测并将其修复为一个真正的单词?

4

2 回答 2

0

explode/preg_split你的句子变成一个单词数组,然后在每个单词上使用你的技巧。

你还没有具体说明什么是“词”;这将准确地确定您需要爆炸的分隔符。

于 2012-07-03T20:20:04.700 回答
-1

您应该迭代地执行此操作。这是一个开始:

//turn punctuation into something we can split on
$sanitized = preg_replace('/[^a-z0-9]+/i', '_', $string);
$words = explode("_",$sanitized);

//now that you have a 'clean' array, do logic
foreach($words as $word) {
    //tinker with word dup' logic here.
}
于 2012-07-03T20:21:54.293 回答