First of all, I'm not an expert about regular expression syntax, however I believe there might be some strange bug when using ctRegex.

Consider the following code:

void main() {
        import std.regex: ctRegex, matchFirst;
        auto expression = ctRegex!("\bis\b");
        auto match = matchFirst("This island is beautiful", expression);
        if(match.empty) writeln("no match");
        else writeln("match");
}
when I compile and run I get the output "no match".

Looking online I found this website https://www.regular-expressions.info/wordboundaries.html where they explain that the above regex should match that string.

So I don't understand what's wrong with my code.

P.S.: using regex instead of ctRegex doesn't solve the problem.

Reply via email to