JSFiddle - React, Tailwind, and code Playground

by beshanoe

JavaScript

var text = 'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Etiam a molestie nisl. Suspendisse lacinia tempor feugiat. Suspendisse {{potenti}}. Fusce tempor {{lacinia}} magna at neque rhoncus, ut bibendum dolor feugiat. Nullam sagittis augue dolor, vitae dignissim nibh {{viverra}}faucibus. {{nonexistent}} Suspendisse egestas magna id euismod gravida. Duis eleifend consectetur tempor. Vivamus eu fringilla nisi. Sed rhoncus nisi purus, in tempus sem sollicitudin vel. Cras mauris ante, placerat ut {{lacinia}} eget, {{facilisis22}} vitae enim. Suspendisse pretium non lectus et bibendum. In sit amet tincidunt dui. Phasellus ullamcorper lectus erat. Suspendisse potenti. Nunc et hendrerit erat. Pellentesque augue erat, commodo nec mi vel, semper laoreet dui.';

var re = /{{(\w*)}}/g;

var data = {
    potenti: 'CUMSHOT',
    viverra: 'GANGBANG',
    facilisis22: 'CREAMPIE',
    lacinia: '!!!!{{viverra}} {{potenti}} {{facilisis22}}!!!!'
}

function tpler(data, tpl) {
    return text.replace(re, function(match, key) {
        if (typeof data[key] !== 'undefined') {
            return data[key];
        } else {
            return '';
        }
    });
}

console.log(tpler(data, text));