проверить смещение в php - PullRequest
       28

проверить смещение в php

0 голосов
/ 10 августа 2011

Как я могу различить слова в строке с перекрытием смещения. Например, у меня есть строка:

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

и затем у меня есть извлечение ключевого слова, которое получает эти слова со смещением:

team violin - 11
violin - 16

на основе приведенного выше результата слово "скрипка" накладывается на "командная скрипка"

правильный результат должен быть:

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-скрипта, который может решить эту проблему?

1 Ответ

0 голосов
/ 11 августа 2011

Я предлагаю вам сначала извлечь строку с помощью ключевого слова большего размера и получить смещение, а затем заменить ключевое слово большого размера специальными символами (#, $ и т. Д.) На столько, сколько необходимо, чтобы длина строки не изменяласьпоэтому при поиске смещения меньшего ключевого слова оно не будет перекрывать большее.

...