JSFiddle - React, Tailwind, and code Playground
by klaascuvelier
JavaScript
var conditionsRegexp = new RegExp('<!-- IF (["a-zA-Z0-9_.]+)\\s*([!=<>]+)\\s*(["a-zA-Z0-9_.]+) -->([\\s\\S]*?)(<!-- ELSE -->([\\s\\S]*?))?<!-- ENDIF -->', 'gm');
var content = ' <div class="shoutDetailsContent <!-- IF type != "1" -->shoutDetailsContentWithMedia<!-- ENDIF --> <!-- IF type != "1" --> style="display:none;" <!-- ENDIF --> >';
//var content = '<div class="shoutDetailsContent [RP] <!-- IF type != "1" --> style="display:none;" <!-- ENDIF --> >'
var results = conditionsRegexp.exec(content);
while (results != null)
{
v(results);
content = content.replace(results[0], '[RP]');
results = conditionsRegexp.exec(content);
}
w(e(conditionsRegexp));
function e(t) { return ('' + t).replace(/</g, '<').replace(/>/g, '>'); }
function v(d) {
document.write('<strong>' + typeof(d) + '</strong><ul>');
for (var a in d)
{
if (typeof d[a] != 'function') {
document.write('<li><strong>' + e(a) + '</strong> => ' + e(d[a]) + '</li>');
}
}
document.write('</ul><br /><hr /><br />');
}
function w(s) { document.write(s); }