Как я могу найти частоту запросов терминов в документе в PHP
Пожалуйста, помогите мне, как найти частоту каждого термина запроса в конкретном документе на PHP. например, у нас есть 2 файла:
Query.txt содержит данные "быть не должно"
Data.txt содержит данные "быть или не быть. Что быть. Все остальное быть".
И мне нужно прочитать файл query.txt и собрать термины из этого файла, которые {"to", "be"} и найти частоту этих терминов в файле data.txt, и если есть способ получить их позиции тоже,
Результат будет, вероятно, так:
"чтобы" появилось 4 раза "быть" появилось 4 раза "не" появилось 1 раз
С Уважением,
1 ответ
Решение
Я считаю, что это то, что вы хотите.
PHP:
<?php
$words = array('to','be','not');
$str = "to be or not to be. what to be. everything else to be.";
$values = array_count_values(str_word_count($str, 1));
foreach($words as $word){
echo '"'.$word.'" appeared ';
if(isset($values[$word])){ echo $values[$word]; }else{ echo '0'; }
echo ' times';
}
?>
PHP с подсветкой:
<?php
$words = array('to','be','not');
$str = "to be or not to be. what to be. everything else to be.";
$nStr = $str;
$values = array_count_values(str_word_count($str, 1));
foreach($words as $word){
$nStr = str_replace($word,"<span style='background-color:#FEEFB3;'>".$word."</span>",$nStr);
echo '"'.$word.'" appeared ';
if(isset($values[$word])){ echo $values[$word]; }else{ echo '0'; }
echo ' times ';
}
echo '<br/>'. $nStr;
?>