gpt4 book ai didi

regex - 如何在SQLite中使用字符列表匹配字符串

转载 作者:行者123 更新时间:2023-12-03 19:40:21 25 4
gpt4 key购买 nike

我在使用SQLite特别是like语句时遇到问题。我想从varchar列由用户提供的字符列表组成的表中检索数据。

例如:

如果用户输入了awnxov,我希望具有匹配这些字母的单词,例如可能在表中的wonwax

最佳答案

从您的评论中,您想提供一个字母列表并找到所有匹配的单词。您不能使用LIKE执行此操作。

但是,您可以使用REGEXP。但是要使用它,您将需要安装regexp库或编写自己的regexp函数并提供回调。

如果您使用的是Ubuntu:

sudo apt-get install sqlite3-pcre


或者,您可以从github页面 here安装。

然后,在运行sqlite时,需要执行以加载 regexp()函数:

.load /usr/lib/sqlite3/pcre.so


(或lib在哪里)

最后,您可以执行以下操作:

SELECT word
FROM table
WHERE word REGEXP '^[awnxov]+$'


或您认为匹配的任何其他PCRE。

这可能效果不佳。它将最有可能扫描所有数据。根据有多少数据以及作为输入接收的字母数,您可能只想创建一个索引并搜索每个两个字母的组合,然后检查代码是否通过。

祝好运

关于regex - 如何在SQLite中使用字符列表匹配字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30413143/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com