Hello,

adding some more details to mention that regex operations done by the core (the =~ operator) use the libc posix regex functions, which do not support extended syntax. Also, these operations done by core use the case insensitive flag.

As mentioned by Henning, regex should be an alternative, or maybe dialplan if one wants db-storage+caching of those regex rules.

Moreover, if the above are not enough, a kemi embedded interpreter (e.g., app_lua, app_python) can be used with inline execution in kamailio.cfg routing blocks -- those external scripting languages should have many options for regex matching.

Cheers,
Daniel

On 13.10.20 13:04, Henning Westerholt wrote:

Hello,

 

just an idea, have you already tried this module: https://www.kamailio.org/docs/modules/stable/modules/regex.html

 

Cheers,

 

Henning

 

--

Henning Westerholt – https://skalatan.de/blog/

Kamailio services – https://gilawa.com

 

From: sr-users <sr-users-bounces@lists.kamailio.org> On Behalf Of Marat Gareev
Sent: Tuesday, October 13, 2020 10:55 AM
To: Kamailio (SER) - Users Mailing List <sr-users@lists.kamailio.org>
Subject: [SR-Users] Caseless regex

 

Hello,

 

Is it possible write more readable regular expression

if ($tU =~ "(?i)^test$") {

    ...

}

instead of "^[tT][eE][sS][tT]$"?

 

On the first option, I get the error:

0(47250) ERROR: <core> [core/rvalue.c:3038]: fix_match_rve(): Bad regular expression

 

Regards,

Marat


_______________________________________________
Kamailio (SER) - Users Mailing List
sr-users@lists.kamailio.org
https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
-- 
Daniel-Constantin Mierla -- www.asipto.com
www.twitter.com/miconda -- www.linkedin.com/in/miconda
Funding: https://www.paypal.me/dcmierla