REGEXP的SQLite LIKE替代方案,匹配任何Word的开始

时间:2010-08-15 20:16:03

标签: android sqlite

似乎无法在Android中的SQLite查询中使用REGEXP。如果有可能,请指出正确的方向。

有没有办法使用LIKE条件在结果中的任何单词的开头查询表达式?

示例:


条目:
 1.最低
 2.铝
 3.最后一分钟

查询:
“min” 是

期望的结果
(1)最低
(3)最后一分钟

不会
(2)铝


这基本上是我当前的代码,它将返回(2)铝:

public Cursor search(String query) {
    return mDb.query(TABLE, COLUMNS, KEY_NAME +" like ?", new String[] { "%"+query+"%" }, null, null, null);
}

任何帮助将不胜感激!

1 个答案:

答案 0 :(得分:7)

这有点像黑客,但是......

foo LIKE 'bar%' OR foo LIKE '% bar%'

可能适合您的需求(在“foo”中单词的开头找到“bar”)。如果你还想要标点符号作为单词分隔符,你也必须为它添加OR子句(因此它为什么是黑客)。