Docs Menu

Whitespace Analyzer

The whitespace analyzer divides text into searchable terms wherever it finds a whitespace character. It leaves all terms in their original case.

The following example index definition specifies an index on the summary field using the whitespace analyzer:

{
"mappings": {
"fields": {
"summary": {
"type": "string",
"analyzer": "lucene.whitespace"
}
}
}
}

Consider a collection named cases with the following documents:

{ "_id": 1, "summary": "No action required at this time." }
{ "_id": 2, "summary": "Case set aside for future action." }
{ "_id": 3, "summary": "Frank's case is ready for planning." }

The following query uses the index on the summary field:

db.cases.aggregate([
{
$search: {
"text": {
"query": "Frank's",
"path": "summary"
}
}
}
])

The above query returns the following result:

{ "_id" : 3, "summary" : "Frank's case is ready for planning." }

The index is case-sensitive.

db.cases.aggregate([
{
$search: {
"text": {
"query": "Case",
"path": "summary"
}
}
}
])

The above query returns the following result:

{ "_id" : 2, "summary" : "Case set aside for future action." }

The document with _id: 3 is not included, because it has the lower-case string case and the search term is Case.

Give Feedback
© 2021 MongoDB, Inc.

About

  • Careers
  • Legal Notices
  • Privacy Notices
  • Security Information
  • Trust Center
© 2021 MongoDB, Inc.