gpt4 book ai didi

java - 使用正则表达式的 SQLite 查询

转载 作者:行者123 更新时间:2023-11-30 06:17:30 26 4
gpt4 key购买 nike

我正在使用 Java,我有一个数据库,SQLite 3.8.5,有 2 列,ID(int key)note(string)。我希望能够查询包含多个单词的所有笔记。

例子:注1:“你好,这部电影是foo”
Note2:“你好,这部电影是黄色的”
注3:“你好,这部电影是”(尤达,不要打字!)
用户给出的过滤词:“foo”“movie”

查询结果应为注1和注2。

这个正则表达式有效,但我似乎无法找到如何将正则表达式作为查询:.*(?=.*movie)(?=.*foo).*

BR

最佳答案

除了上面的答案之外,为了完整性,Java 中的解决方案。您必须为 REGEXP 运算符应该工作的每个连接执行此操作。

// Create regexp() function to make the REGEXP operator available
Function.create(connection, "REGEXP", new Function() {
@Override
protected void xFunc() throws SQLException {
String expression = value_text(0);
String value = value_text(1);
if (value == null)
value = "";

Pattern pattern=Pattern.compile(expression);
result(pattern.matcher(value).find() ? 1 : 0);
}
});

关于java - 使用正则表达式的 SQLite 查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25786996/

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