アポストロフィトークンフィルター
アポストロフィの後のすべての文字を削除し、アポストロフィ自体も含まれます。
このフィルターは、Elasticsearchの組み込みのTürkçe言語アナライザーに含まれています。これは、トルコ語のために構築されたLuceneのApostropheFilterを使用しています。
例
以下のanalyze APIリクエストは、アポストロフィトークンフィルターがどのように機能するかを示しています。
Python
resp = client.indices.analyze(
tokenizer="standard",
filter=[
"apostrophe"
],
text="Istanbul'a veya Istanbul'dan",
)
print(resp)
Ruby
response = client.indices.analyze(
body: {
tokenizer: 'standard',
filter: [
'apostrophe'
],
text: "Istanbul'a veya Istanbul'dan"
}
)
puts response
Js
const response = await client.indices.analyze({
tokenizer: "standard",
filter: ["apostrophe"],
text: "Istanbul'a veya Istanbul'dan",
});
console.log(response);
コンソール
GET /_analyze
{
"tokenizer" : "standard",
"filter" : ["apostrophe"],
"text" : "Istanbul'a veya Istanbul'dan"
}
フィルターは以下のトークンを生成します:
テキスト
[ Istanbul, veya, Istanbul ]
アナライザーに追加
以下のcreate index APIリクエストは、アポストロフィトークンフィルターを使用して新しいカスタムアナライザーを構成します。
Python
resp = client.indices.create(
index="apostrophe_example",
settings={
"analysis": {
"analyzer": {
"standard_apostrophe": {
"tokenizer": "standard",
"filter": [
"apostrophe"
]
}
}
}
},
)
print(resp)
Ruby
response = client.indices.create(
index: 'apostrophe_example',
body: {
settings: {
analysis: {
analyzer: {
standard_apostrophe: {
tokenizer: 'standard',
filter: [
'apostrophe'
]
}
}
}
}
}
)
puts response
Js
const response = await client.indices.create({
index: "apostrophe_example",
settings: {
analysis: {
analyzer: {
standard_apostrophe: {
tokenizer: "standard",
filter: ["apostrophe"],
},
},
},
},
});
console.log(response);
コンソール
PUT /apostrophe_example
{
"settings": {
"analysis": {
"analyzer": {
"standard_apostrophe": {
"tokenizer": "standard",
"filter": [ "apostrophe" ]
}
}
}
}
}