diff --git a/frontend/src/components/v2/HighlightText/HighlightText.tsx b/frontend/src/components/v2/HighlightText/HighlightText.tsx
index 7f7bd6bee..3ce7c8f19 100644
--- a/frontend/src/components/v2/HighlightText/HighlightText.tsx
+++ b/frontend/src/components/v2/HighlightText/HighlightText.tsx
@@ -18,19 +18,21 @@ export const HighlightText = ({
const escapedSearchTerm = searchTerm.replace(/[.*+?^${}()|[\]\\]/g, "\\$&");
const regex = new RegExp(escapedSearchTerm, "gi");
- for (const match of text.matchAll(regex)) {
- if (match.index > lastIndex) {
- parts.push({text.substring(lastIndex, match.index)});
+ text.replace(regex, (match: string, offset: number) => {
+ if (offset > lastIndex) {
+ parts.push({text.substring(lastIndex, offset)});
}
parts.push(
-
- {match[0]}
+
+ {match}
);
- lastIndex = match.index + match[0].length;
- }
+ lastIndex = offset + match.length;
+
+ return match;
+ });
if (lastIndex < text.length) {
parts.push({text.substring(lastIndex)});