Esteemed monks,
I discovered that, without installing anything other than DBD::SQLite (version 1.76), I was able to run a SELECT using a REGEXP in the WHERE clause. All of the searching I'd turned up had suggested that built-in REGEXP support in SQLite was either non-existent or limited to the CLI, and that I'd have to install one of several available regex libraries.
I tested against a table of 11M movie titles, in which the title column was indexed. While REGEXP worked, it was considerably slower than LIKE in the following queries:
SELECT * FROM Titles WHERE title LIKE '%batman%'; -- 1.3 sec
SELECT * FROM Titles WHERE title REGEXP '(?i)\bbatman\b'; -- 5.9 sec
SELECT * FROM Titles WHERE title REGEXP '(?i)\b{wb}batman\b{wb}'; -- 1
+1.0 sec !!
I can't find any documentation for this! Could anyone provide some links? And, why is REGEXP so much slower?