這篇文章給大家分享的是有關(guān)iOS中如何實(shí)現(xiàn)自帶超強(qiáng)中文分詞器的內(nèi)容。小編覺(jué)得挺實(shí)用的,因此分享給大家做個(gè)參考,一起跟隨小編過(guò)來(lái)看看吧。
成都創(chuàng)新互聯(lián)不能給您低的價(jià)格,只能給您高的品質(zhì)!我們努力堅(jiān)持得到越來(lái)越多的客戶認(rèn)可和追隨,這正是我們繼續(xù)前進(jìn)的大動(dòng)力!創(chuàng)新互聯(lián)專業(yè)網(wǎng)站設(shè)計(jì)公司,為企業(yè)提供高端網(wǎng)站建設(shè),營(yíng)銷型網(wǎng)站制作,外貿(mào)網(wǎng)站制作,做網(wǎng)站,網(wǎng)站改版等做網(wǎng)站服務(wù),建網(wǎng)站費(fèi)用1680元起,成都數(shù)百家企業(yè)建站公司的選擇。
效果如下:
實(shí)現(xiàn)
其實(shí)蘋果給出了完整的API,想要全面了解的可以直接看文檔:CFStringTokenizer Reference
這里說(shuō)說(shuō)簡(jiǎn)單的一個(gè)實(shí)現(xiàn):
// 要分詞的字符串 NSString *string = @"俠士隱鋒,莽夫露刃"; self.keywords = [[NSMutableArray alloc] init]; CFStringTokenizerRef ref = CFStringTokenizerCreate(NULL, (__bridge CFStringRef)string, CFRangeMake(0, string.length), kCFStringTokenizerUnitWord, NULL);// 創(chuàng)建分詞器 CFRange range;// 當(dāng)前分詞的位置 // 獲取第一個(gè)分詞的范圍 CFStringTokenizerAdvanceToNextToken(ref); range = CFStringTokenizerGetCurrentTokenRange(ref); // 循環(huán)遍歷獲取所有分詞并記錄到數(shù)組中 NSString *keyWord; while (range.length>0) { keyWord = [string substringWithRange:NSMakeRange(range.location, range.length)]; [self.keywords addObject:keyWord]; CFStringTokenizerAdvanceToNextToken(ref); range = CFStringTokenizerGetCurrentTokenRange(ref); }
其實(shí)邏輯很簡(jiǎn)單:創(chuàng)建分詞器–>一個(gè)個(gè)地一次獲取分詞后的每個(gè)詞的起始位置和長(zhǎng)度,從而取出詞。
示例里我用列表顯示每個(gè)分詞,比較清楚,列表的實(shí)現(xiàn)就不說(shuō)明了,可以直接看工程代碼。
值得一提的是,其分詞速度很快,甚至一些網(wǎng)絡(luò)詞匯比如“木有”,一些成語(yǔ)等等都能夠識(shí)別出,能看出這是分詞的什么嗎:
感謝各位的閱讀!關(guān)于“iOS中如何實(shí)現(xiàn)自帶超強(qiáng)中文分詞器”這篇文章就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,讓大家可以學(xué)到更多知識(shí),如果覺(jué)得文章不錯(cuò),可以把它分享出去讓更多的人看到吧!
文章名稱:iOS中如何實(shí)現(xiàn)自帶超強(qiáng)中文分詞器
分享地址:http://aaarwkj.com/article46/iggjeg.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站排名、手機(jī)網(wǎng)站建設(shè)、響應(yīng)式網(wǎng)站、網(wǎng)站設(shè)計(jì)、營(yíng)銷型網(wǎng)站建設(shè)、App設(shè)計(jì)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)