PHP检测重复单词
是否可以从该字符串中检测重复的单词:PHP检测重复单词,php,detect,Php,Detect,是否可以从该字符串中检测重复的单词: $string = "dogdog"; 我只想要返回“str”而不是“strstr” 我尝试了一些很好的解决方案,但并没有达到我想要的效果: $string = "dogdog"; $length = strlen($string) / 2; echo substr($string, $length); 我想从一个大句子中检测出($string=“dogdog something dogdog else bla bla,something,(somet
$string = "dogdog";
我只想要返回“str”而不是“strstr”
我尝试了一些很好的解决方案,但并没有达到我想要的效果:
$string = "dogdog";
$length = strlen($string) / 2;
echo substr($string, $length);
我想从一个大句子中检测出($string=“dogdog something dogdog else bla bla,something,(something);something”…..字符串包含两个重复的正确的单词,如何检测并将其固定到一个真正的单词?/你的句子变成一个单词数组,然后在每个单词上使用你的技巧
您没有指定“单词”的构成;这将准确地确定需要在哪些分隔符上分解。您应该迭代地执行此操作。这是一个开始:
//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.
}
问:你所说的“重复”是什么意思?那个“strstr”有两次字符串“str”?问:如果是的话,“st/st”等怎么办?什么是“单词”?例如,“strstr abc def”是三个单词吗?那么“aaaaaaaa”呢?它只返回“a”吗?那么“aabbaa”会返回“ab”吗?这就是我的理解,如果您想从“strstrstr”返回“str”,请提供示例输入/输出。例如,“这是一个长句”=>“这是一个长句”,“strstrstr”=>“str”,“strstrstrstrstr”=>“str”,“一二二三三三”=>“一二三”。所有这些都对吗?@Wrikken:三个星期是很久很久以前的事了吗?(天哪,我一定是老古董了。:-)对这个问题的修改导致它现在变得更加没有意义了。在你的新例句中,期望的输出是什么?这会有点复杂,这个句子不会只包含spaces@Osa:好吧,也许基于
“
的天真爆炸是不够的,但基本思想是一样的。您还没有指定句子中可能还有什么,因此您必须找出需要引入的其他分隔符。@OliCharlesworth请参见上面的OPs注释。句子不仅包含空格,还包含多种要分解的符号,这非常复杂,strstr可以在多个地方找到。。我刚刚编辑了sentence@Osa当前位置如果一个单词出现在句子中的多个位置,为什么会出现问题?