代码之家  ›  专栏  ›  技术社区  ›  Paul Burke

类似于sqlite的regexp选项,匹配任何单词的开头

  •  4
  • Paul Burke  · 技术社区  · 14 年前

    在Android中,似乎不可能在sqlite查询中使用regexp。如果可能的话,请给我指一个正确的方向。

    有没有一种方法可以使用相似条件在结果中任何单词的开头查询表达式?

    例子:


    条目:
    1。最小值
    2。铝
    三。最后一分钟

    查询:
    “闽”

    期望结果
    (1)最小值
    (3)最后一分钟

    不是
    (2)铝


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

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

    任何帮助都将不胜感激!

    1 回复  |  直到 14 年前
        1
  •  7
  •   Amber    14 年前

    有点像黑客,但是…

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

    可能适合您的需要(在“foo”一词的开头找到“bar”)。如果您还希望标点符号作为单词定界符,那么您还必须为此添加或子句(这就是为什么它是黑客)。