2014-04-04 79 views
0

找到一個好問題標題對我的問題很困難,所以如果你有更好的問題,隨時編輯!檢查單詞是否多次提及

目前我正在使用file_get_contents檢索一個頁面,然後我會去掉所有的javascript,將所有的html設置爲小寫,並且將所有的html標籤都去掉。

此後,我正在做一個陣列,每一個字,就像這樣:

preg_match_all("/((?:\w'|\w|-)+)/", $contents, $words);

$frequency = array(); 

    foreach($words[0] as $word) { 

     unset($words[$word]); 

     // This is the filter out the 'common words' 
     if(in_array($word, $common_words)) continue; 

     if(isset($frequency[$word])) { 
      $frequency[$word] += 1; 
     } else { 
      $frequency[$word] = 1; 
     } 
    } 

但是,這適用於單個的詞,如果我檢索與該文本在HTML頁面它:

'這是一個示例文本。這是一個HTML文本可以是什麼樣子」

這將導致以下使用我的代碼:

this = 2 is = 2 a = 2 sample = 1 text = 2 what = 1 html = 1 can = 1 look = 1 like = 1

但現在我想的東西,看起來很相似,但2個字。我將如何實現這一目標?它應該是這個樣子用同一句話:

this is = 2

我試着給儘可能多的例子,因爲我可以使它儘可能明確。

如果您需要任何澄清,請不要問!

+0

當你打算組建使用多個字鍵,我想有必要一些字典(不是字面的一個,只是一個數組,文件或者其他東西)來匹配。你是否有一個? – Sayed

+0

或者,您實際上可以使用預執行(在單次運行中使用先前的查詢)結果來查找匹配項。這可以作爲你的字典,因此,你可能能夠生成像'this is = 2'這樣的密鑰。 – Sayed

+0

這個函數可能有助於[str_word_count](http://www.php.net/manual/en/function.str -word-count.php) – Class

回答