我安装了REGEX支持
apt-get install sqlite3 sqlite3-pcre
现在我可以在bash控制台上的查询中使用REGEX了
DB="somedb.db" REGEX_EXTENSION="SELECT load_extension('/usr/lib/sqlite3/pcre.so');" sqlite3 $DB "$REGEX_EXTENSION select * from soMetable where name REGEXP '^[a-z]+$'"
默认情况下,sqlite不提供regex_replace函数.您需要将其加载为扩展名.以下是我设法做到的方法.
原文链接:https://www.f2er.com/sqlite/197855.htmlDownload this C code for the extension (icu_replace)
使用编译它
gcc --shared -fPIC -I sqlite-autoconf-3071100 icu_replace.c -o icu_replace.so
并且在sqlite3 runn下面的命令post上面提到的命令已经运行并创建了一个文件icu_replace.so
SELECT load_extension(' path to icu_replace.so','sqlite3_extension_init') from dual;
在此之后,您将能够使用以下功能: –
select regex_replace('\bThe\b',x,'M') from dual;