@vectara/vectara-ui
Version:
Vectara's design system, codified as a React and Sass component library
10 lines (9 loc) • 429 B
JavaScript
export const reorderCitations = (unorderedSummary) => {
const allCitations = unorderedSummary.match(/\[\d+\]/g) || [];
const uniqueCitations = [...new Set(allCitations)];
const citationToReplacement = {};
uniqueCitations.forEach((citation, index) => {
citationToReplacement[citation] = `[${index + 1}]`;
});
return unorderedSummary.replace(/\[\d+\]/g, (match) => citationToReplacement[match]);
};