鍍金池/ 問答/PHP/ 用戶表單提交的標(biāo)題怎么提取多個(gè)標(biāo)題中相同的部分?

用戶表單提交的標(biāo)題怎么提取多個(gè)標(biāo)題中相同的部分?

圖片描述

圖片中的投訴對象是用戶在表單中提交的,怎么使用php提取關(guān)鍵字(公司簡稱),然后存入mysql數(shù)據(jù)庫,查數(shù)據(jù)的時(shí)候可以通過這個(gè)簡稱獲取分組數(shù)據(jù),圖片就是分組查詢出來的數(shù)據(jù),我想知道這個(gè)功能是怎么實(shí)現(xiàn)的?

回答
編輯回答
我甘愿

你這個(gè)問題問的就有點(diǎn)矛盾,你說怎么使用php提取關(guān)鍵字(公司簡稱)。這句話,php怎么知道你的字符串中哪個(gè)才是關(guān)鍵字(在沒有關(guān)鍵詞庫的情況下)?

感覺你的問題應(yīng)該是php怎么提取字符串中出現(xiàn)頻率最多的子串,感覺像是這樣。
我們有了這個(gè)思路之后,再深一步探討一下,我有個(gè)思路:

  1. 把你某個(gè)時(shí)間段內(nèi),用戶提交的所有title集合起來放在一個(gè)字符串中,然后提取出出現(xiàn)頻率最高的子串
  2. 把子串出現(xiàn)的頻率由高到低,都列出來,人工過濾,哪些才是所需要的關(guān)鍵字,形成一個(gè)關(guān)鍵字庫
  3. 下一次再有提交title的時(shí)候,先與關(guān)鍵字庫進(jìn)行匹配,如果沒有匹配上,除了插入到原有的投訴庫中,再把單獨(dú)的title插入到一個(gè)臨時(shí)的表里,一天結(jié)束,定時(shí)進(jìn)行一個(gè)關(guān)鍵詞提取的算法(重復(fù)1),然后第二天,人工再來過濾

以上。

2017年2月7日 06:50
編輯回答
涼薄

如果不用開源的搜索引擎,自己搞這個(gè)的話,意義不大,這個(gè)涉及到關(guān)鍵字提取算法了,比較復(fù)雜,所以你要通過這幾個(gè)關(guān)鍵字查詢,直接

select * from table where title like '%塞納春天%';

這種形式就把包含塞納春天的數(shù)據(jù)查詢出來了。

2017年12月22日 17:10
編輯回答
葬愛

首先需要分詞,也就是在用戶提交表單的時(shí)候,把標(biāo)題給分詞,然后存入數(shù)據(jù)庫中,然后根據(jù)提取到的分詞進(jìn)行全文索引等操作

2017年12月17日 07:25