首页 新闻 会员 周边

Lucene.Net: 如何从 GetTokenStream 的返回结果中获取分词列表

0
悬赏园豆:30 [已解决问题] 解决于 2023-01-24 20:13

下面是调用 GetTokenStream 的代码,请问如何从 tokenStream 中获取分词列表?

Analyzer analyzer = new StandardAnalyzer(LuceneVersion.LUCENE_48);
using TokenStream tokenStream = analyzer.GetTokenStream(null, new StringReader(phrase));
dudu的主页 dudu | 高人七级 | 园豆:30966
提问于:2023-01-24 18:06
< >
分享
最佳答案
0

通过下面的代码实现了

Analyzer analyzer = new StandardAnalyzer(LuceneVersion.LUCENE_48);
using TokenStream tokenStream = analyzer.GetTokenStream(null, new StringReader(phrase));
ICharTermAttribute charTermAttribute = tokenStream.AddAttribute<ICharTermAttribute>();

tokenStream.Reset();
var tokeList = new List<string>();
while (tokenStream.IncrementToken())
{
    tokeList.Add(charTermAttribute.ToString());
}
tokenStream.End();

Console.Write(string.Join(",", tokeList));
dudu | 高人七级 |园豆:30966 | 2023-01-24 20:12
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册