Whitespace analyzer

edit

The whitespace analyzer breaks text into terms whenever it encounters a whitespace character.

Example output

edit
response = client.indices.analyze(
  body: {
    analyzer: 'whitespace',
    text: "The 2 QUICK Brown-Foxes jumped over the lazy dog's bone."
  }
)
puts response
POST _analyze
{
  "analyzer": "whitespace",
  "text": "The 2 QUICK Brown-Foxes jumped over the lazy dog's bone."
}

The above sentence would produce the following terms:

[ The, 2, QUICK, Brown-Foxes, jumped, over, the, lazy, dog's, bone. ]

Configuration

edit

The whitespace analyzer is not configurable.

Definition

edit

It consists of:

If you need to customize the whitespace analyzer then you need to recreate it as a custom analyzer and modify it, usually by adding token filters. This would recreate the built-in whitespace analyzer and you can use it as a starting point for further customization:

response = client.indices.create(
  index: 'whitespace_example',
  body: {
    settings: {
      analysis: {
        analyzer: {
          rebuilt_whitespace: {
            tokenizer: 'whitespace',
            filter: []
          }
        }
      }
    }
  }
)
puts response
PUT /whitespace_example
{
  "settings": {
    "analysis": {
      "analyzer": {
        "rebuilt_whitespace": {
          "tokenizer": "whitespace",
          "filter": [         
          ]
        }
      }
    }
  }
}

You’d add any token filters here.