LPS-44122 Escaped text cannot be highlighted correctly in Search portlet

Background:
- Methods StringUtil#highlight & HtmlImpl#escape work well individually
- It is possible to search for a term that actually also occurs in an espace sequence, for example:  (term) 34 --> (quote) '"' --> &#034;

To deal with it, we should split the existing logic into a 3--steps method:
1. Hightlight the given text using escape-safe tags
2. Escape the result text from 1.
3. Replace the temporary tags with the correct highlight tags

Note: we cannot use "$" sign in the escapeSafeHighlight variables, as "$" is a reserved group symbol in regex, because it would result

"java.lang.IllegalArgumentException: Illegal group reference"

Signed-off-by: Tibor Lipusz <tibor.lipusz@liferay.com>
LPS-44122 Apply to Journal Content Search portlet

Signed-off-by: Tibor Lipusz <tibor.lipusz@liferay.com>
LPS-44122 Centralize search-related escape and highlight logic into Summary (avoid code duplication)
LPS-44122 Apply new logic to Search Portlet
LPS-44122 Apply new logic to Journal Content Search Portlet
LPS-44123 Search & Journal Content Search portlets ignore property "index.search.highlight.enabled"