0

如何区分具有重叠偏移的字符串中的单词。例如我有一个字符串:

$s = "The famous team violin will showcase there violin talent to the fans who love violin.";

然后我有一个关键字提取,它用偏移量检索这些单词:

team violin - 11
violin - 16

根据上面的结果,“violin”这个词与“team violion”重叠

正确的结果应该是:

team violin - 11
violin - 43

这是检索每个关键字的偏移量的代码

foreach($keywordArr as $keyword)
{
preg_match('/\b'.$keyword.'\b/',$s,$match,PREG_OFFSET_CAPTURE)
$keywordwithOffset = $keyword."\t".$match[0][1];
}

任何人有一块可以解决这样的事情的PHP脚本?

4

1 回答 1

0

我建议你先用较大的关键字提取字符串并检索偏移量,然后用特殊字符(#、$ 等)替换大关键字,因为字符串的长度不会改变,所以当您正在搜索较小关键字的偏移量,它不会与较大关键字重叠。

于 2011-08-10T20:05:01.133 回答