例如有一個list=['aabb','abb','acccx'],現要有一個字串query='aab',在list中尋找與query最相似的元素并輸出。各位大神如何得到這個元素。
uj5u.com熱心網友回復:
什么是最相似的?1、相等? 用if *==*
2、包含or被包含? 用切片
3、格式相似? 2+1?
uj5u.com熱心網友回復:
模糊匹配要考慮,格式,型別,長度,起始結尾,規律,容錯,等等!你要做到什么程度,搜索引擎做到的那個程度人家都花了很多錢很多時間uj5u.com熱心網友回復:
按照你現在的代碼直接相等了 為什么還要相似,相似就屬于模糊匹配搜索了,成本是個問題uj5u.com熱心網友回復:
比如陣列里有[“高新產業”,“產業資產”,“高新科技技術”]三個元素,與傳進來的“高新科技”去匹配,相似度最高的肯定是陣列里“高新科技技術”這個元素,有沒有方法可以做到。uj5u.com熱心網友回復:
解決方法:第一種方法:
有,先中文分詞,抽象成向量,計算向量的夾角。
去搜索“相似度演算法(余弦相似度)”。
第二種方法:
字串的相似度(擴展kmp)
請看該文章
https://blog.csdn.net/update7/article/details/72628827
uj5u.com熱心網友回復:
這樣是檢查是否包含子字串,用str in str
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/133226.html
下一篇:請大佬指點迷津
