标签: analyzer

创建 Lucene.net 自定义分析器

我正在尝试在 Lucene.net 4.8 中创建一个自定义分析器 - 但是我遇到了一个我无法理解的错误。

我的分析器代码:

public class SynonymAnalyzer : Analyzer  
{

protected override TokenStreamComponents CreateComponents(string fieldName, TextReader reader)
{
    String base1 = "lawnmower";
    String syn1 = "lawn mower";
    String base2 = "spanner";
    String syn2 = "wrench";

    SynonymMap.Builder sb = new SynonymMap.Builder(true);
    sb.Add(new CharsRef(base1), new CharsRef(syn1), true);
    sb.Add(new CharsRef(base2), new CharsRef(syn2), true);
    SynonymMap smap = sb.Build();

    Tokenizer tokenizer = new StandardTokenizer(Version.LUCENE_48, reader);

    TokenStream result = new StandardTokenizer(Version.LUCENE_48, reader);
    result = new SynonymFilter(result, smap, true);
    return new TokenStreamComponents(tokenizer, result);
} …
Run Code Online (Sandbox Code Playgroud)

c# lucene lucene.net analyzer

6
推荐指数
1
解决办法
2467
查看次数

将参考程序集添加到 Roslyn 分析器代码修复单元测试

我正在尝试编写一个单元测试来测试 Roslyn 分析器代码修复。自从引入分析器和编辑 DiagnosticVerifier.Helper.cs 以来,事情已经发生了变化(https://www.productiverage.com/creating-ac-sharp-roslyn-analysisr-for-beginners-by-a-初学者

我的分析器适用于 mvc ControllerBase 派生类型,但将 AspNetCore 程序集的名称添加到引用程序集并不能解决我的测试无法解析测试源代码中包含的 AspNetCore 命名空间的问题

var test = new VerifyCS.Test();
mytest.ReferenceAssemblies = test.ReferenceAssemblies.AddAssemblies( ImmutableArray.Create(new string[] { "Microsoft.AspNetCore.Mvc"}));
Run Code Online (Sandbox Code Playgroud)

错误 CS0234:命名空间“Microsoft”中不存在类型或命名空间名称“AspNetCore”(您是否缺少程序集引用?)

编辑:固定,使用:

mytest.ReferenceAssemblies = mytest.ReferenceAssemblies.WithPackages(ImmutableArray.Create(new PackageIdentity[] { new PackageIdentity("Microsoft.AspNetCore.Mvc.Core", "2.2.5") }));
Run Code Online (Sandbox Code Playgroud)

analyzer roslyn

6
推荐指数
1
解决办法
1697
查看次数

我应该在lucene.net中使用什么分析器来获取URL?

我在获取正确标记的简单URL时遇到问题,以便您可以按预期进行搜索.

我正在使用StandardAnalyzer 索引" http://news.bbc.co.uk/sport1/hi/football/internationals/8196322.stm "并将字符串标记为以下(调试输出):

(http,0,4,type=<ALPHANUM>)
(news.bbc.co.uk,7,21,type=<HOST>)
(sport1/hi,22,31,type=<NUM>)
(football,32,40,type=<ALPHANUM>)
(internationals/8196322.stm,41,67,type=<NUM>)
Run Code Online (Sandbox Code Playgroud)

一般来说它看起来不错,http本身,然后主机名,但问题似乎与正斜杠.当然它应该把它们视为单独的词?

我需要做些什么才能纠正这个问题?

谢谢

PS我正在使用Lucene.NET,但我真的不认为这对答案有很大影响.

lucene analyzer

5
推荐指数
1
解决办法
2095
查看次数

NHibernate查询分析器

有谁能描述如何使用NHibernate查询分析器?我下载并尝试构建它但它失败了,我不太确定如何使用它.

我正在使用nHibernate与Sybase和WCF.

任何帮助是极大的赞赏.

谢谢

nhibernate analyzer

5
推荐指数
1
解决办法
2098
查看次数

Obj-,'self'时使用的实例变量未设置为'[(super或self)init ...]的结果

我已经问了一个类似的问题,但我仍然看不出问题?

-(id)initWithKeyPadType: (int)value
{
    [self setKeyPadType:value];
    self = [self init];
    if( self != nil )
    {
        //self.intKeyPadType = value;

    }
    return self;
}

- (id)init {

    NSNumberFormatter *formatter = [[[NSNumberFormatter alloc] init] 
                                                              autorelease];
    decimalSymbol = [formatter decimalSeparator];
....
Run Code Online (Sandbox Code Playgroud)

警告来自上面的一行 Instance variable used while 'self' is not set to the result of '[(super or self) init...]'

xcode cocoa-touch objective-c analyzer

5
推荐指数
1
解决办法
3050
查看次数

带有干扰分析仪的Lucene荧光笔

我使用Lucene的Highlighter类突出显示匹配搜索结果的片段,效果很好.我想从使用StandardAnalyzer的搜索切换到EnglishAnalyzer,它将执行术语的限制.

搜索结果很好,但现在荧光笔并不总是找到匹配.这是我正在看的一个例子:

document field text 1: Everyone likes goats.

document field text 2: I have a goat that eats everything.
Run Code Online (Sandbox Code Playgroud)

使用EnglishAnalyzer并搜索"goat",两个文档都匹配,但是荧光笔只能从文档2中找到匹配的片段.有没有办法让两个文档的荧光笔返回数据?

我理解令牌的字符是不同的,但是相同的令牌仍然存在,因此它只是突出显示该位置存在的任何令牌似乎是合理的.

如果有帮助,这是使用Lucene 3.5.

lucene full-text-search highlighting analyzer snowballanalyzer

5
推荐指数
1
解决办法
2508
查看次数

如何使用android ndk r8e中引入的静态代码分析器?

http://developer.android.com/tools/sdk/ndk/index.html

如上面的链接所示,android ndk r8e:

为Linux/MacOSX主机添加了静态代码分析器.有关使用分析器的信息,请参阅CHANGES.HTML.

在CHANGES.HTML中:

  • 为Linux/MacOSX主机添加了静态代码分析器
    1. 对于ndk-build,要么导出NDK_ANALYZE = 1,要么将其添加到命令行.
    2. 对于独立版,请参考ndk-build,例如使用/ path/to/standalone/bin // analyzer运行scan-build.

我添加了ndk-build NDK_ANALYZE = 1来构建命令,它构建得很好.但我究竟如何使用分析仪来检测内存问题呢?我没找到任何文件.

android analyzer android-ndk

5
推荐指数
1
解决办法
1972
查看次数

1个领域的多个分析仪

使用丹麦分析仪获得2个字段(名称和描述).现在我也需要用英语分析仪来支持它.

我的解决方案是什么?

  1. 在田地上添加更多分析仪?
  2. 查找时设置语言?(不要认为这有效,因为数据不会被分析)
  3. 有2个额外字段name_en&description_en?

analyzer elasticsearch

5
推荐指数
1
解决办法
4458
查看次数

elasticsearch定制令牌生成器-按长度拆分令牌

我正在使用Elasticsearch版本1.2.1。我有一个用例,其中我想创建一个自定义令牌生成器,该令牌生成器将令牌的长度破坏到一定的最小长度。例如,假设最小长度为4,则令牌“ abcdefghij”将被拆分为:“ abcd efgh ij”。

我想知道是否可以在无需编写自定义Lucene Tokenizer类的情况下实现此逻辑?

提前致谢。

lucene tokenize analyzer stringtokenizer elasticsearch

5
推荐指数
1
解决办法
2411
查看次数

创建可识别程序集中类的构造函数参数类型的Roslyn C#分析器

背景:

我有一个属性,指示对象中字段的属性IsMagic。我还有一个Magician类可以运行在任何对象上,并MakesMagic提取每个字段和属性IsMagic并将其包装在Magic包装器中。

using System;
using System.Collections.Generic;
using System.Linq;
using System.Reflection;

namespace MagicTest
{

    /// <summary>
    /// An attribute that allows us to decorate a class with information that identifies which member is magic.
    /// </summary>
    [AttributeUsage(AttributeTargets.Property|AttributeTargets.Field, AllowMultiple = false)]
    class IsMagic : Attribute { }

    public class Magic
    {
        // Internal data storage
        readonly public dynamic value;

        #region My ever-growing list of constructors
        public Magic(int input) { value = input; …
Run Code Online (Sandbox Code Playgroud)

c# analyzer roslyn

5
推荐指数
1
解决办法
591
查看次数