* @see ValueTransformer#transformValue(JMeterProperty)
*/
public JMeterProperty transformValue(JMeterProperty prop) throws InvalidVariableException {
PatternMatcher pm = new Perl5Matcher();
Pattern pattern = null;
PatternCompiler compiler = new Perl5Compiler();
Iterator iter = getVariables().keySet().iterator();
String input = prop.getStringValue();
while (iter.hasNext()) {
String key = (String) iter.next();
String value = (String) getVariables().get(key);
if (regexMatch) {
try {
pattern = compiler.compile(value);
input = Util.substitute(pm, pattern, new StringSubstitution("${" + key + "}"), input,
Util.SUBSTITUTE_ALL);
} catch (MalformedPatternException e) {
log.warn("Malformed pattern " + value);
}