Elasticsearch Highlighting: Return all matches

We are aiming to provide a fulltext search that returns highlighted snippets. In some contexts it is necessary to obtain all matches within a text document (which is so far saved in a single field). However, increasing the number_of_fragments to a large number does not yield the desired results since the number of snippets seems truncated in comparison to the results that are returned when number_of_fragments = 0 and the entire text is returned highlighted but without passage separation. This behaviour is apparently independent of the Highlighter type (unified, fvh, plain) since all three of them seem to use some kind of hardcoded "bestFragment" approach under the hood. Is there a way (either by parameter settings or by overwriting classes) to achieve this?