$('input').on('change', function(){ var index = parseInt( $('input:first').val(), 10 ), search1 = $('input:eq(1)').val(), search2 = $('input:last').val(), // basic replacement result1 = search1.replace(/\{index\}/, index), // regex math result2 = search2 .replace(/\{index([-+]\d+)?\}/g, function(fullstring, match){ return index + (match ? parseInt(match, 10) : 0); }); $('span:first').html(result1); $('span:last').html(result2); }).change();