Я пытаюсь отформатировать обычный текст в расширенный текст JavaScript, и вот часть моего кода, которая выделяет некоторые примеры ключевых слов:
var sampleKeywords = '(function|var|throw|return|class)\s';
elem.innerHTML = elem.textContent.replace(new RegExp(sampleKeywords, 'g'), function(val) {
return `<mark>${val}</mark>`;
});
Вышеприведенный код выделяетлюбое из примеров ключевых слов, которые появляются в тексте и сопровождаются пробелом.Это сделано для того, чтобы предотвратить выделение ввода, такого как function123
.
При этом, я все же хотел бы выделить ввод, такой как function
, после которого ничего не следует.
По сути, я хочу выделить любое из ключевых слов образца, за которым следует пробел или вообще ничего, за которым ничего не следует.
Как я могу добиться этого в своем шаблоне регулярных выражений?
Примечание: Мне известны очевидные недостатки моего кода, такие как выделение текста в кавычках или не выделение всех доступных ключевых слов JavaScript, но приведенный выше код только аннотация ;не завершено.