[DOCS] Reformat reverse token filter docs (#50672)

* Updates the description and adds a Lucene link
* Adds analyze and custom analyzer snippets
This commit is contained in:
James Rodewig 2020-01-07 10:54:16 -06:00
parent deb0991667
commit 20eba1e410
1 changed files with 87 additions and 1 deletions

View File

@ -4,4 +4,90 @@
<titleabbrev>Reverse</titleabbrev> <titleabbrev>Reverse</titleabbrev>
++++ ++++
A token filter of type `reverse` that simply reverses each token. Reverses each token in a stream. For example, you can use the `reverse` filter
to change `cat` to `tac`.
Reversed tokens are useful for suffix-based searches,
such as finding words that end in `-ion` or searching file names by their
extension.
This filter uses Lucene's
https://lucene.apache.org/core/{lucene_version_path}/analyzers-common/org/apache/lucene/analysis/reverse/ReverseStringFilter.html[ReverseStringFilter].
[[analysis-reverse-tokenfilter-analyze-ex]]
==== Example
The following <<indices-analyze,analyze API>> request uses the `reverse`
filter to reverse each token in `quick fox jumps`:
[source,console]
--------------------------------------------------
GET _analyze
{
"tokenizer" : "standard",
"filter" : ["reverse"],
"text" : "quick fox jumps"
}
--------------------------------------------------
The filter produces the following tokens:
[source,text]
--------------------------------------------------
[ kciuq, xof, spmuj ]
--------------------------------------------------
/////////////////////
[source,console-result]
--------------------------------------------------
{
"tokens" : [
{
"token" : "kciuq",
"start_offset" : 0,
"end_offset" : 5,
"type" : "<ALPHANUM>",
"position" : 0
},
{
"token" : "xof",
"start_offset" : 6,
"end_offset" : 9,
"type" : "<ALPHANUM>",
"position" : 1
},
{
"token" : "spmuj",
"start_offset" : 10,
"end_offset" : 15,
"type" : "<ALPHANUM>",
"position" : 2
}
]
}
--------------------------------------------------
/////////////////////
[[analysis-reverse-tokenfilter-analyzer-ex]]
==== Add to an analyzer
The following <<indices-create-index,create index API>> request uses the
`reverse` filter to configure a new
<<analysis-custom-analyzer,custom analyzer>>.
[source,console]
--------------------------------------------------
PUT reverse_example
{
"settings" : {
"analysis" : {
"analyzer" : {
"whitespace_reverse" : {
"tokenizer" : "whitespace",
"filter" : ["reverse"]
}
}
}
}
}
--------------------------------------------------