与Azure搜索中的标准分析器不同,使用通配符
我需要允许对包含破折号的值进行无文本搜索,如与Azure搜索中的标准分析器不同,使用通配符,azure,azure-cognitive-search,Azure,Azure Cognitive Search,我需要允许对包含破折号的值进行无文本搜索,如ABCD-12EF 我知道标准分析器不能很好地与-一起工作,因为它将内容拆分为多个令牌。我创建了一个像下面这样的索引来尝试关键字和空白分析器,但似乎*字符不再起作用了。只有在不搜索*soABCD-12EF的情况下搜索完整值,我才会得到结果。如果我搜索ABCD-12EF或ABCD-12*或ABCD*我不会得到任何结果 知道为什么吗 public class IndexTryOut { [Key, IsFilterable] public
ABCD-12EF
我知道标准
分析器不能很好地与-
一起工作,因为它将内容拆分为多个令牌。我创建了一个像下面这样的索引来尝试关键字
和空白
分析器,但似乎*
字符不再起作用了。只有在不搜索*
soABCD-12EF
的情况下搜索完整值,我才会得到结果。如果我搜索ABCD-12EF
或ABCD-12*
或ABCD*
我不会得到任何结果
知道为什么吗
public class IndexTryOut
{
[Key, IsFilterable]
public string Id { get; set; }
[IsSearchable, IsFilterable]
[Analyzer("keyword")]
public string Data1 { get; set; }
[IsSearchable, IsFilterable]
[Analyzer("whitespace")]
public string Data2 { get; set; }
}
您可以定义一个自定义分析器,该分析器使用带有“小写”标记过滤器的“关键字”标记器-请参阅我对这个问题的回答: