diff -ur asterisk-13.7.0/res/res_sorcery_realtime.c asterisk-13.7.0a/res/res_sorcery_realtime.c --- asterisk-13.7.0/res/res_sorcery_realtime.c 2016-01-15 14:01:49.000000000 -0500 +++ asterisk-13.7.0a/res/res_sorcery_realtime.c 2016-01-29 16:17:34.644573689 -0500 @@ -223,7 +223,11 @@ /* The realtime API provides no direct ability to do regex so for now we support a limited subset using pattern matching */ snprintf(field, sizeof(field), "%s LIKE", UUID_FIELD); - snprintf(value, sizeof(value), "%%%s%%", regex); + if (regex[0] == '^') { + snprintf(value, sizeof(value), "%s%%", regex + 1); + } else { + snprintf(value, sizeof(value), "%%%s%%", regex); + } if (!(fields = ast_variable_new(field, value, ""))) { return;