UNPKG

react-highlight-text

Version:
26 lines (23 loc) 744 B
'use strict'; Object.defineProperty(exports, "__esModule", { value: true }); exports.quoteString = quoteString; exports.getTermMatches = getTermMatches; exports.getMatchTerms = getMatchTerms; function quoteString(rawString) { return rawString.replace(/([.?*+^$[(){}|\\])/g, '\\$1'); } function getTermMatches(text, term) { var pattern = new RegExp('' + quoteString(term), 'gi'); var matches = pattern.exec(text); return { startIndex: matches.index, endIndex: matches.index + term.length }; } function getMatchTerms(text, searchQuery) { var search = quoteString(searchQuery).trim().replace(/ /gi, '|'); var pattern = new RegExp('(' + search + ')', 'gi'); return text.match(pattern) || []; }