Bird
Raised Fist0
Elasticsearchquery~5 mins

Highlighting matched text in Elasticsearch - Cheat Sheet & Quick Revision

Choose your learning style10 modes available
Recall & Review
beginner
What is the purpose of highlighting in Elasticsearch search results?
Highlighting shows the parts of the text that match the search query, making it easier to see why a document was found.
Click to reveal answer
beginner
Which Elasticsearch query section is used to add highlighting to search results?
The highlight section is added alongside the query in the search request to specify which fields to highlight.
Click to reveal answer
intermediate
What does the pre_tags and post_tags in Elasticsearch highlighting do?
They define the HTML or text tags that wrap around the matched text to visually mark it, for example, <em> and </em>.
Click to reveal answer
beginner
How do you specify which fields to highlight in an Elasticsearch query?
Inside the highlight section, use the fields object with field names as keys and empty objects or options as values.
Click to reveal answer
intermediate
What is the default behavior if you do not specify pre_tags and post_tags in Elasticsearch highlighting?
Elasticsearch wraps matched text with <em> and </em> tags by default.
Click to reveal answer
In Elasticsearch, where do you add the highlighting instructions in a search request?
AInside the <code>highlight</code> section alongside the <code>query</code>
BInside the <code>filter</code> section
CInside the <code>sort</code> section
DInside the <code>aggs</code> section
What tags does Elasticsearch use by default to wrap highlighted text?
A<code>&lt;strong&gt;</code> and <code>&lt;/strong&gt;</code>
B<code>&lt;mark&gt;</code> and <code>&lt;/mark&gt;</code>
C<code>&lt;highlight&gt;</code> and <code>&lt;/highlight&gt;</code>
D<code>&lt;em&gt;</code> and <code>&lt;/em&gt;</code>
How do you specify multiple fields to highlight in Elasticsearch?
AList them as an array under <code>fields</code>
BUse a comma-separated string in <code>fields</code>
CAdd each field as a key inside <code>fields</code> with an empty object as value
DHighlighting only works on one field at a time
What is the effect of setting number_of_fragments to 0 in highlighting?
ANo fragments are returned
BThe whole field content is returned as one fragment
COnly the first fragment is returned
DFragments are returned with default size
Which of these is NOT a valid use of the highlight section in Elasticsearch?
ASort search results by relevance
BCustomize tags wrapping matched text
CControl fragment size and number
DSpecify fields to highlight
Explain how to add highlighting to an Elasticsearch search query and customize the tags used to mark matched text.
Think about where you put the highlight instructions and how to change the default <em> tags.
You got /3 concepts.
    Describe the default behavior of Elasticsearch highlighting and how it helps users understand search results.
    Focus on what the user sees and why highlighting is useful.
    You got /3 concepts.

      Practice

      (1/5)
      1. What is the main purpose of the highlight section in an Elasticsearch query?
      easy
      A. To filter documents before searching
      B. To sort the search results by relevance
      C. To update documents in the index
      D. To show matched words clearly in search results

      Solution

      1. Step 1: Understand the role of highlighting

        Highlighting is used to emphasize matched words in search results so users can see why a document matched.
      2. Step 2: Compare with other query parts

        Sorting, filtering, and updating are different functions not related to highlighting matched text.
      3. Final Answer:

        To show matched words clearly in search results -> Option D
      4. Quick Check:

        Highlight = show matched words [OK]
      Hint: Highlight section shows matched words in results [OK]
      Common Mistakes:
      • Confusing highlight with sorting or filtering
      • Thinking highlight updates documents
      • Assuming highlight changes search relevance
      2. Which of the following is the correct syntax to add highlighting for the field content in an Elasticsearch query?
      easy
      A. "highlight": {"fields": {"content": {}}}
      B. "highlight": {"field": "content"}
      C. "highlight": {"content": {"fields": {}}}
      D. "highlight": {"fields": ["content"]}

      Solution

      1. Step 1: Recall correct highlight syntax

        The correct syntax uses "highlight" with "fields" as an object mapping field names to options, like {"content": {}}.
      2. Step 2: Check each option

        "highlight": {"fields": {"content": {}}} matches the correct structure. Options B, C, and D use incorrect keys or data types.
      3. Final Answer:

        "highlight": {"fields": {"content": {}}} -> Option A
      4. Quick Check:

        Highlight fields syntax = "highlight": {"fields": {"content": {}}} [OK]
      Hint: Use "highlight": {"fields": {"fieldname": {}}} [OK]
      Common Mistakes:
      • Using "field" instead of "fields"
      • Putting fields inside an array instead of object
      • Misplacing keys inside highlight
      3. Given this Elasticsearch query snippet, what will the highlight section return for a match in the title field?
      {
        "query": {"match": {"title": "quick fox"}},
        "highlight": {"fields": {"title": {}}}
      }
      medium
      A. An error because highlight requires custom tags
      B. Only the word "quick" highlighted, "fox" ignored
      C. The matched words "quick" and "fox" wrapped in default highlight tags
      D. No highlighting because tags are missing

      Solution

      1. Step 1: Understand default highlight behavior

        When highlight is enabled with empty options, Elasticsearch wraps matched words with default tags like <em> and </em>.
      2. Step 2: Analyze the query

        The query matches both "quick" and "fox" in the title, so both words will be highlighted.
      3. Final Answer:

        The matched words "quick" and "fox" wrapped in default highlight tags -> Option C
      4. Quick Check:

        Default highlight tags wrap matched words [OK]
      Hint: Empty highlight options use default tags to wrap matches [OK]
      Common Mistakes:
      • Thinking highlight needs custom tags to work
      • Assuming only first matched word is highlighted
      • Believing missing tags cause errors
      4. Identify the error in this Elasticsearch highlight query snippet:
      {
        "query": {"match": {"description": "fast car"}},
        "highlight": {"fields": ["description"]}
      }
      medium
      A. "match" query is invalid for highlighting
      B. "fields" should be an object, not an array
      C. "highlight" must be inside "query"
      D. "description" field cannot be highlighted

      Solution

      1. Step 1: Check highlight fields syntax

        The "fields" key must be an object mapping field names to options, not an array.
      2. Step 2: Verify other parts

        "match" query is valid, "highlight" is correctly placed, and any field can be highlighted if indexed.
      3. Final Answer:

        "fields" should be an object, not an array -> Option B
      4. Quick Check:

        Highlight fields = object, not array [OK]
      Hint: Highlight fields must be an object, not a list [OK]
      Common Mistakes:
      • Using array instead of object for fields
      • Placing highlight inside query incorrectly
      • Assuming some fields can't be highlighted
      5. You want to highlight matched text in both title and content fields with custom tags <strong> and </strong>. Which is the correct highlight section to achieve this?
      hard
      A. "highlight": {"fields": {"title": {}, "content": {}}, "pre_tags": [""], "post_tags": [""]}
      B. "highlight": {"fields": ["title", "content"], "pre_tags": "", "post_tags": ""}
      C. "highlight": {"fields": {"title": {"tags": ["", ""]}, "content": {"tags": ["", ""]}}}
      D. "highlight": {"fields": {"title": {}, "content": {}}, "tags": ["", ""]}

      Solution

      1. Step 1: Understand how to set custom tags

        Custom tags are set globally using "pre_tags" and "post_tags" arrays outside the fields object.
      2. Step 2: Check each option's structure

        "highlight": {"fields": {"title": {}, "content": {}}, "pre_tags": [""], "post_tags": [""]} correctly sets "fields" as an object and uses "pre_tags" and "post_tags" arrays. Options B, C, and D misuse keys or data types.
      3. Final Answer:

        "highlight": {"fields": {"title": {}, "content": {}}, "pre_tags": [""], "post_tags": [""]} -> Option A
      4. Quick Check:

        Custom tags use pre_tags/post_tags arrays [OK]
      Hint: Use pre_tags/post_tags arrays for custom highlight tags [OK]
      Common Mistakes:
      • Using arrays for fields instead of objects
      • Setting tags inside each field incorrectly
      • Using single strings instead of arrays for tags
      Recommended

      Ready to prove it?

      Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

      10 questions~5 mineasy hard