你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

Indexes - Analyze

显示分析器如何将文本分解为令牌。

POST {endpoint}/indexes('{indexName}')/search.analyze?api-version=2024-07-01

URI 参数

名称 必需 类型 说明
endpoint
path True

string

搜索服务的终结点 URL。

indexName
path True

string

要为其测试分析器的索引的名称。

api-version
query True

string

客户端 API 版本。

请求头

名称 必需 类型 说明
x-ms-client-request-id

string

uuid

随请求一起发送的跟踪 ID,以帮助进行调试。

请求正文

名称 必需 类型 说明
text True

string

要拆分为标记的文本。

analyzer

LexicalAnalyzerName

用于中断给定文本的分析器的名称。 如果未指定此参数,则必须改为指定 tokenizer。 tokenizer 和分析器参数互斥。

charFilters

CharFilterName[]

中断给定文本时要使用的字符筛选器的可选列表。 仅当使用 tokenizer 参数时,才能设置此参数。

tokenFilters

TokenFilterName[]

中断给定文本时要使用的令牌筛选器的可选列表。 仅当使用 tokenizer 参数时,才能设置此参数。

tokenizer

LexicalTokenizerName

用于中断给定文本的 tokenizer 的名称。 如果未指定此参数,则必须改为指定分析器。 tokenizer 和分析器参数互斥。

响应

名称 类型 说明
200 OK

AnalyzeResult

Other Status Codes

ErrorResponse

错误响应。

示例

SearchServiceIndexAnalyze

示例请求

POST https://myservice.search.windows.net/indexes('hotels')/search.analyze?api-version=2024-07-01

{
  "text": "Text to analyze",
  "analyzer": "standard.lucene"
}

示例响应

{
  "tokens": [
    {
      "token": "text",
      "startOffset": 0,
      "endOffset": 4,
      "position": 0
    },
    {
      "token": "to",
      "startOffset": 5,
      "endOffset": 7,
      "position": 1
    },
    {
      "token": "analyze",
      "startOffset": 8,
      "endOffset": 15,
      "position": 2
    }
  ]
}

定义

名称 说明
AnalyzedTokenInfo

有关分析器返回的令牌的信息。

AnalyzeRequest

指定用于将文本分解为标记的一些文本和分析组件。

AnalyzeResult

在文本上测试分析器的结果。

CharFilterName

定义搜索引擎支持的所有字符筛选器的名称。

ErrorAdditionalInfo

资源管理错误附加信息。

ErrorDetail

错误详细信息。

ErrorResponse

错误响应

LexicalAnalyzerName

定义搜索引擎支持的所有文本分析器的名称。

LexicalTokenizerName

定义搜索引擎支持的所有 tokenizer 的名称。

TokenFilterName

定义搜索引擎支持的所有令牌筛选器的名称。

AnalyzedTokenInfo

有关分析器返回的令牌的信息。

名称 类型 说明
endOffset

integer

输入文本中标记的最后一个字符的索引。

position

integer

标记相对于其他标记的输入文本中的位置。 输入文本中的第一个标记具有位置 0、下一个标记的位置 1 等。 根据所使用的分析器,某些令牌的位置可能相同,例如,它们是彼此的同义词。

startOffset

integer

输入文本中标记的第一个字符的索引。

token

string

分析器返回的令牌。

AnalyzeRequest

指定用于将文本分解为标记的一些文本和分析组件。

名称 类型 说明
analyzer

LexicalAnalyzerName

用于中断给定文本的分析器的名称。 如果未指定此参数,则必须改为指定 tokenizer。 tokenizer 和分析器参数互斥。

charFilters

CharFilterName[]

中断给定文本时要使用的字符筛选器的可选列表。 仅当使用 tokenizer 参数时,才能设置此参数。

text

string

要拆分为标记的文本。

tokenFilters

TokenFilterName[]

中断给定文本时要使用的令牌筛选器的可选列表。 仅当使用 tokenizer 参数时,才能设置此参数。

tokenizer

LexicalTokenizerName

用于中断给定文本的 tokenizer 的名称。 如果未指定此参数,则必须改为指定分析器。 tokenizer 和分析器参数互斥。

AnalyzeResult

在文本上测试分析器的结果。

名称 类型 说明
tokens

AnalyzedTokenInfo[]

请求中指定的分析器返回的令牌列表。

CharFilterName

定义搜索引擎支持的所有字符筛选器的名称。

名称 类型 说明
html_strip

string

尝试去除 HTML 构造的字符筛选器。 请参阅 https://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/charfilter/HTMLStripCharFilter.html

ErrorAdditionalInfo

资源管理错误附加信息。

名称 类型 说明
info

object

其他信息。

type

string

其他信息类型。

ErrorDetail

错误详细信息。

名称 类型 说明
additionalInfo

ErrorAdditionalInfo[]

错误附加信息。

code

string

错误代码。

details

ErrorDetail[]

错误详细信息。

message

string

错误消息。

target

string

错误目标。

ErrorResponse

错误响应

名称 类型 说明
error

ErrorDetail

错误对象。

LexicalAnalyzerName

定义搜索引擎支持的所有文本分析器的名称。

名称 类型 说明
ar.lucene

string

用于阿拉伯语的 Lucene 分析器。

ar.microsoft

string

Microsoft阿拉伯语分析器。

bg.lucene

string

保加利亚语的 Lucene 分析器。

bg.microsoft

string

Microsoft保加利亚分析器。

bn.microsoft

string

孟加拉语的Microsoft分析器。

ca.lucene

string

加泰罗尼亚语的 Lucene 分析器。

ca.microsoft

string

加泰罗尼亚语Microsoft分析器。

cs.lucene

string

用于捷克的 Lucene 分析器。

cs.microsoft

string

适用于捷克的Microsoft分析器。

da.lucene

string

丹麦语的 Lucene 分析器。

da.microsoft

string

适用于丹麦语的Microsoft分析器。

de.lucene

string

用于德语的 Lucene 分析器。

de.microsoft

string

适用于德语的Microsoft分析器。

el.lucene

string

用于希腊的 Lucene 分析器。

el.microsoft

string

适用于希腊的Microsoft分析器。

en.lucene

string

用于英语的 Lucene 分析器。

en.microsoft

string

Microsoft英语分析器。

es.lucene

string

用于西班牙语的 Lucene 分析器。

es.microsoft

string

Microsoft西班牙语分析器。

et.microsoft

string

爱沙尼亚Microsoft分析器。

eu.lucene

string

用于巴斯克的 Lucene 分析器。

fa.lucene

string

波斯语的 Lucene 分析器。

fi.lucene

string

芬兰语的 Lucene 分析器。

fi.microsoft

string

Microsoft芬兰语分析器。

fr.lucene

string

用于法语的 Lucene 分析器。

fr.microsoft

string

Microsoft法语分析器。

ga.lucene

string

用于爱尔兰的 Lucene 分析器。

gl.lucene

string

用于加利西亚的 Lucene 分析器。

gu.microsoft

string

Microsoft古吉拉特分析器。

he.microsoft

string

适用于希伯来语的Microsoft分析器。

hi.lucene

string

Lucene 分析器用于印地语。

hi.microsoft

string

Microsoft印地语分析器。

hr.microsoft

string

适用于克罗地亚的Microsoft分析器。

hu.lucene

string

用于匈牙利语的 Lucene 分析器。

hu.microsoft

string

匈牙利语Microsoft分析器。

hy.lucene

string

亚美尼亚语的 Lucene 分析器。

id.lucene

string

适用于印度尼西亚的 Lucene 分析器。

id.microsoft

string

印度尼西亚Microsoft分析器(巴萨)。

is.microsoft

string

Microsoft冰岛分析器。

it.lucene

string

用于意大利语的 Lucene 分析器。

it.microsoft

string

Microsoft意大利语分析器。

ja.lucene

string

用于日语的 Lucene 分析器。

ja.microsoft

string

适用于日语的Microsoft分析器。

keyword

string

将字段的全部内容视为单个标记。 这对于邮政编码、ID 和某些产品名称等数据非常有用。 请参阅 http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/KeywordAnalyzer.html

kn.microsoft

string

Microsoft Kannada 分析器。

ko.lucene

string

用于朝鲜语的 Lucene 分析器。

ko.microsoft

string

适用于朝鲜语的Microsoft分析器。

lt.microsoft

string

Microsoft立陶宛分析器。

lv.lucene

string

用于拉脱维亚的 Lucene 分析器。

lv.microsoft

string

Microsoft拉脱维亚分析器。

ml.microsoft

string

Microsoft马拉雅拉姆分析器。

mr.microsoft

string

Microsoft用于马拉蒂的分析器。

ms.microsoft

string

Microsoft马来语分析器(拉丁语)。

nb.microsoft

string

Microsoft挪威分析器(博克马尔)。

nl.lucene

string

用于荷兰的 Lucene 分析器。

nl.microsoft

string

适用于荷兰的Microsoft分析器。

no.lucene

string

挪威语的 Lucene 分析器。

pa.microsoft

string

Microsoft旁遮普分析器。

pattern

string

灵活将文本通过正则表达式模式分隔为字词。 请参阅 http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/PatternAnalyzer.html

pl.lucene

string

用于波兰的 Lucene 分析器。

pl.microsoft

string

Microsoft波兰分析器。

pt-BR.lucene

string

葡萄牙语(巴西)的 Lucene 分析器。

pt-BR.microsoft

string

Microsoft葡萄牙语(巴西)分析器。

pt-PT.lucene

string

葡萄牙语(葡萄牙)的 Lucene 分析器。

pt-PT.microsoft

string

Microsoft葡萄牙分析器(葡萄牙)。

ro.lucene

string

罗马尼亚语的 Lucene 分析器。

ro.microsoft

string

Microsoft罗马尼亚语分析器。

ru.lucene

string

用于俄语的 Lucene 分析器。

ru.microsoft

string

适用于俄语的Microsoft分析器。

simple

string

将非字母的文本除以小写形式,并将其转换为小写。 请参阅 http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/SimpleAnalyzer.html

sk.microsoft

string

Microsoft斯洛伐克分析器。

sl.microsoft

string

斯洛文尼亚Microsoft分析器。

sr-cyrillic.microsoft

string

塞尔维亚语(西里尔文)的Microsoft分析器。

sr-latin.microsoft

string

Microsoft塞尔维亚语(拉丁语)分析器。

standard.lucene

string

标准 Lucene 分析器。

standardasciifolding.lucene

string

标准 ASCII 折叠 Lucene 分析器。 请参阅 https://learn.microsoft.com/rest/api/searchservice/Custom-analyzers-in-Azure-Search#Analyzers

stop

string

以非字母分隔文本;应用小写和非索引字标记筛选器。 请参阅 http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/StopAnalyzer.html

sv.lucene

string

用于瑞典的 Lucene 分析器。

sv.microsoft

string

Microsoft用于瑞典的分析器。

ta.microsoft

string

泰米尔语Microsoft分析器。

te.microsoft

string

Microsoft Telugu 分析器。

th.lucene

string

用于泰国的 Lucene 分析器。

th.microsoft

string

Microsoft泰语分析器。

tr.lucene

string

用于土耳其的 Lucene 分析器。

tr.microsoft

string

适用于土耳其的Microsoft分析器。

uk.microsoft

string

Microsoft乌克兰语分析器。

ur.microsoft

string

用于乌尔都语的Microsoft分析器。

vi.microsoft

string

Microsoft越南语分析器。

whitespace

string

使用空格 tokenizer 的分析器。 请参阅 http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/WhitespaceAnalyzer.html

zh-Hans.lucene

string

用于中文的 Lucene 分析器(简体中文)。

zh-Hans.microsoft

string

Microsoft中文分析器(简体中文)。

zh-Hant.lucene

string

中国(传统)的 Lucene 分析器。

zh-Hant.microsoft

string

Microsoft中国(传统)分析器。

LexicalTokenizerName

定义搜索引擎支持的所有 tokenizer 的名称。

名称 类型 说明
classic

string

适用于处理大多数欧洲语言文档的基于语法的 tokenizer。 请参阅 http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/standard/ClassicTokenizer.html

edgeNGram

string

将输入从边缘标记为给定大小的 n 元语法。 请参阅 https://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/ngram/EdgeNGramTokenizer.html

keyword_v2

string

以单个标记的形式发出整个输入。 请参阅 http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/KeywordTokenizer.html

letter

string

以非字母分隔文本。 请参阅 http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/LetterTokenizer.html

lowercase

string

将非字母的文本除以小写形式,并将其转换为小写。 请参阅 http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/LowerCaseTokenizer.html

microsoft_language_stemming_tokenizer

string

使用特定于语言的规则划分文本,并将单词减少到其基形式。

microsoft_language_tokenizer

string

使用特定于语言的规则划分文本。

nGram

string

将输入标记为给定大小的 n 元语法。 请参阅 http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/ngram/NGramTokenizer.html

path_hierarchy_v2

string

类似路径层次结构的 Tokenizer。 请参阅 http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/path/PathHierarchyTokenizer.html

pattern

string

使用正则表达式模式匹配构造不同令牌的 Tokenizer。 请参阅 http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/pattern/PatternTokenizer.html

standard_v2

string

标准 Lucene 分析器;由标准 tokenizer、小写筛选器和停止筛选器组成。 请参阅 http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/standard/StandardTokenizer.html

uax_url_email

string

将 URL 和电子邮件作为一个令牌进行标记化。 请参阅 http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/standard/UAX29URLEmailTokenizer.html

whitespace

string

将文本除以空格。 请参阅 http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/WhitespaceTokenizer.html

TokenFilterName

定义搜索引擎支持的所有令牌筛选器的名称。

名称 类型 说明
apostrophe

string

删除撇号后的所有字符(包括撇号本身)。 请参阅 http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/tr/ApostropheFilter.html

arabic_normalization

string

一个标记筛选器,该筛选器应用阿拉伯语规范化器来规范化正版。 请参阅 http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/ar/ArabicNormalizationFilter.html

asciifolding

string

如果存在此类等效项,则将前 127 个 ASCII 字符(“基本拉丁语”Unicode 块)中的字母、数字和符号 Unicode 字符转换为其 ASCII 等效项。 请参阅 http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/ASCIIFoldingFilter.html

cjk_bigram

string

形成从标准标记器生成的 CJK 术语的 bigram。 请参阅 http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/cjk/CJKBigramFilter.html

cjk_width

string

规范化 CJK 宽度差异。 将全形 ASCII 变体折叠为等效的基本拉丁语,将半角片假名变体折叠为等效的假名。 请参阅 http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/cjk/CJKWidthFilter.html

classic

string

从首字母缩略词中删除英语拥有者和点。 请参阅 http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/standard/ClassicFilter.html

common_grams

string

为索引时经常出现的字词构造 bigrams。 单个字词仍编制索引,并覆盖 bigrams。 请参阅 http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/commongrams/CommonGramsFilter.html

edgeNGram_v2

string

从输入令牌的前面或后面开始,生成给定大小的 n 元语法。 请参阅 http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/ngram/EdgeNGramTokenFilter.html

elision

string

删除 elisions。 例如,“l'avion”(平面)将转换为“avion”(平面)。 请参阅 http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/util/ElisionFilter.html

german_normalization

string

根据德国 2 雪球算法的启发法规范德语字符。 请参阅 http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/de/GermanNormalizationFilter.html

hindi_normalization

string

规范化印地语中的文本,以消除拼写变体中的一些差异。 请参阅 http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/hi/HindiNormalizationFilter.html

indic_normalization

string

以印度语言规范化文本的 Unicode 表示形式。 请参阅 http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/in/IndicNormalizationFilter.html

keyword_repeat

string

发出每个传入令牌两次,一次作为关键字,一次作为非关键字发出。 请参阅 http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/KeywordRepeatFilter.html

kstem

string

用于英语的高性能 kstem 筛选器。 请参阅 http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/en/KStemFilter.html

length

string

删除太长或太短的字词。 请参阅 http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/LengthFilter.html

limit

string

在编制索引时限制令牌数。 请参阅 http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/LimitTokenCountFilter.html

lowercase

string

将标记文本规范化为小写。 请参阅 https://lucene.apache.org/core/6_6_1/analyzers-common/org/apache/lucene/analysis/core/LowerCaseFilter.html

nGram_v2

string

生成给定大小的 n 元语法。 请参阅 http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/ngram/NGramTokenFilter.html

persian_normalization

string

对波斯语应用规范化。 请参阅 http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/fa/PersianNormalizationFilter.html

phonetic

string

为拼音匹配创建令牌。 请参阅 https://lucene.apache.org/core/4_10_3/analyzers-phonetic/org/apache/lucene/analysis/phonetic/package-tree.html

porter_stem

string

使用 Porter 词干算法转换令牌流。 请参阅 http://tartarus.org/~martin/PorterStemmer

reverse

string

反转令牌字符串。 请参阅 http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/reverse/ReverseStringFilter.html

scandinavian_folding

string

折叠斯堪的纳维亚字符 åÅääÄÄ->a 和 öÖøØ->o. 它还歧视使用双元音 aa, ae, ao, oe 和 oo, 只留下第一个。 请参阅 http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/ScandinavianFoldingFilter.html

scandinavian_normalization

string

规范化使用可互换的斯堪的纳维亚字符。 请参阅 http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/ScandinavianNormalizationFilter.html

shingle

string

将令牌的组合创建为单个令牌。 请参阅 http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/shingle/ShingleFilter.html

snowball

string

使用 Snowball 生成的词干分析器词干的筛选器。 请参阅 http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/snowball/SnowballFilter.html

sorani_normalization

string

规范化 Sorani 文本的 Unicode 表示形式。 请参阅 http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/ckb/SoraniNormalizationFilter.html

stemmer

string

特定于语言的词干筛选。 请参阅 https://learn.microsoft.com/rest/api/searchservice/Custom-analyzers-in-Azure-Search#TokenFilters

stopwords

string

从令牌流中删除停止字词。 请参阅 http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/StopFilter.html

trim

string

剪裁标记中的前导空格和尾随空格。 请参阅 http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/TrimFilter.html

truncate

string

将术语截断为特定长度。 请参阅 http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/TruncateTokenFilter.html

unique

string

筛选出与上一个标记相同的文本的标记。 请参阅 http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/RemoveDuplicatesTokenFilter.html

uppercase

string

将标记文本规范化为大写。 请参阅 https://lucene.apache.org/core/6_6_1/analyzers-common/org/apache/lucene/analysis/core/UpperCaseFilter.html

word_delimiter

string

将单词拆分为子词,对子词组执行可选转换。