whole_func_string: function getRenderedTemplate(template, data, variableRegex) {
    return template.replace(variableRegex, (match, captured) => {
      const replacement = valueForProperty(data, captured.trim());
      // If a template variable is found but nothing is supplied to fill it, remove it
      if (replacement == null) {
        return '';
      }
  
      // If the replacement is a function, replace the variable with the result of the function
      if (typeof replacement === 'function') {
        return replacement();
      }
  
      // otherwise replace the template variable with the associated data
      return replacement;
    });
  }
func_code_string: function getRenderedTemplate(template, data, variableRegex) {
    return template.replace(variableRegex, (match, captured) => {
      const replacement = valueForProperty(data, captured.trim());
      // If a template variable is found but nothing is supplied to fill it, remove it
      if (replacement == null) {
        return '';
      }
  
      // If the replacement is a function, replace the variable with the result of the function
      if (typeof replacement === 'function') {
        return replacement();
      }
  
      // otherwise replace the template variable with the associated data
      return replacement;
    });
  }
func_documentation_string: Gets the rendered output of a template
  @param {String} template - A template to use as a base for the render
  @param {Object} data - The data to use when populating the templates
  @param {RegExp} variableRegex - The regex to use for indentifying template variables