JSFiddle - React, Tailwind, and code Playground
JavaScript
function escapeRegExp(str){
return str.replace(/([.*+?^=!:${}()|\[\]\/\\])/g, "\\$1");
}
var keywords = [ 'An Example', 'Test'];
var str = "Lorem ipsum dolor sit amet, consetetur sadipscing elitr\n"+
"Test: Lorem ipsum dolor sit amet, consetetur sadipscing elitr\n"+
"This is An Example Lorem ipsum dolor sit amet, consetetur sadipscing elitr\n"+
"An Example Lorem ipsum dolor sit amet, consetetur sadipscing elitr";
reg = keywords.map(function(s){ return escapeRegExp(s) + ":?";}).join("|");
var xx = str.split(/\n/).map(function(x) {
var res = x.split(new RegExp("^(" + reg + ")"));
return res.length==1 ? "<p>" + res[0] + "</p>" : "<p>" + res[1].replace(/:$/,"") + "</p>\n<p>" + res[2].trim();
}).join("\n");
document.body.innerHTML = xx;