1.對(duì)于關(guān)鍵詞存在空格或者特殊符號(hào)的情況下,jieba無(wú)法分出該詞2.在github上找到了一個(gè)解決方案,修改jieba源碼__init__.py免費(fèi)分享,造損免責(zé)。打開(kāi)默認(rèn)詞典(根目錄)或自定義詞典,把所有用來(lái)間隔詞頻和詞性的空格間隔符改成@@(選用@@是因?yàn)橐话汴P(guān)鍵詞里遇到這個(gè)分隔符的幾率比較小吧)繼續(xù),打開(kāi)jieba根目錄下init.py搜索
re_han_default = re.compile("([\u4E00-\u9FD5a-zA-Z0-9+#&\._]+)", re.U)
改成
re_han_default = re.compile("(.+)", re.U)
搜索
re_userdict = re.compile('^(.+?)( [0-9]+)?( [a-z]+)?$', re.U)
改成
re_userdict = re.compile('^(.+?)(\u0040\u0040[0-9]+)?(\u0040\u0040[a-z]+)?$', re.U)
搜索
word, freq = line.split(' ')[:2]
改成
word, freq = line.split('\u0040\u0040')[:2]
補(bǔ)充:若用的全模式繼續(xù)改。
搜索
re_han_cut_all = re.compile("([\u4E00-\u9FD5]+)", re.U)
改成
re_han_cut_all = re.compile("(.+)", re.U)但是這樣導(dǎo)致分詞的結(jié)果出現(xiàn)大量的emoji表情或者不需要的 類(lèi)似 =,()的符號(hào),3.期望輸出我 只想讓jieba能夠識(shí)別自定義詞中存在 空格的中英文關(guān)鍵詞 或者以 -連接的關(guān)鍵詞并且去除其他特殊字符比如emoji等表情符 該怎么修改呢?string = 'my dog is a happy dog'
jieba.add_word('happy dog')
jieba.cut(my dog is a happy dog)
outputs: ['my','dog','is','a','happy','dog']
期望輸出: ['my','dog','is','a','happy dog']對(duì)正則表達(dá)式實(shí)在頭大,希望有經(jīng)驗(yàn)的大佬能告訴我有什么辦法...
jieba英文空格分詞問(wèn)題
夢(mèng)里花落0921
2018-08-23 15:39:51