111,072
社区成员




lucene.net没有中文分析器, 如下的语句可以得到一个StandardAnalyzer的实例:
Analyzer analyzer = new StandardAnalyzer(Lucene.Net.Util.Version.LUCENE_29);
lucene.net自带的这个分析器分析中文效果不好。我知道盘古分词和结巴分词可以用于中文分词,结巴分词使用下面的语句:
var segmenter = new JiebaSegmenter();
var segments = segmenter.Cut("我来到北京清华大学", cutAll: true);
我不清楚segmenter是什么,如果想做索引,就需要使用分析器,请问该怎样获得结巴分词的分析器呢?
在VS2017和VS2022对下面代码编译:
在new Lucene.Net.Analysis.China.ChineseAnalyzer()底下出现了红色的折线
Lucene.Net.Analysis.Analyzer objCA = new Lucene.Net.Analysis.China.ChineseAnalyzer();
都通不过。
using Lucene.Net.Analysis;
using System.IO;
using Lucene.Net.Analysis.Standard;
using ICSharpCode.SharpZipLib;
using Lucene.Net.Analysis.China;
引用了Lucene.Net.dll、Lucene.Net.Analysis.China.dll和ICSharpCode.SharpZipLib.dll
下面这一句中,在new Lucene.Net.Analysis.China.ChineseAnalyzer()底下出现了红色的折线
Lucene.Net.Analysis.Analyzer objCA = new Lucene.Net.Analysis.China.ChineseAnalyzer();
下面这一句中,在new Lucene.Net.Analysis.China.ChineseAnalyzer()底下出现了红色的折线
Lucene.Net.Analysis.Analyzer objCA = new Lucene.Net.Analysis.China.ChineseAnalyzer();
是不是装了JIEba分词 .net core 版,不能直接给Lucene使用?
是这个AdvancedChineseAnalyzer?
lucene.net是否只带有simpleanalyzer可以用于中文分词?按单个字分,效果还可以?
这样也不行:
Analyzer analyzer = new JieBaAnalyzer(TokenizerMode.Search);
以下这一句编译错误:
Analyzer analyzer = new JiebaAnalyzer();
错误 CS0246 未能找到类型或命名空间名“JiebaAnalyzer”(是否缺少 using 指令或程序集引用?) ,可是我引用了这么多:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using JiebaNet.Segmenter;
using JiebaNet.Segmenter.PosSeg;
using Lucene.Net;
using Lucene.Net.Documents;
using Lucene.Net.Index;
using Lucene.Net.QueryParsers;
using Lucene.Net.Search;
using Lucene.Net.Store;
using Lucene.Net.Util;
using Lucene.Net.Analysis;
using System.IO;
using Lucene.Net.Analysis.Standard;