diff --git a/src/switch_regex.c b/src/switch_regex.c index 473b998f84..de56e74754 100644 --- a/src/switch_regex.c +++ b/src/switch_regex.c @@ -153,7 +153,10 @@ SWITCH_DECLARE(void) switch_perform_substitution(switch_regex_t *re, int match_c if (num < 0 || num > 256) { num = -1; } - + + /* make $1 start where it matched in | sep list */ + num += (match_count-2); + if (pcre_copy_substring(field_data, ovector, match_count, num, replace, sizeof(replace)) > 0) { switch_size_t r; for (r = 0; r < strlen(replace); r++) {