2011-07-01 33 views
6

我想使用query函數使用選擇參數從Android程序中的SQLiteDatabase中獲取條目。我使用SQLite的LIKE和%通配符進行了簡單模式匹配,取得了成功。現在我想用正則表達式來做更復雜的模式匹配。使用正則表達式查詢Android的SQLiteDatabase

根據SQLite website,對於REGEXP操作員來說,它必須是用戶定義的。有沒有人有任何成功創建使用Android的SQLiteDatabase定義的SQLite函數?或者有沒有人發現在數據庫中搜索字符串時使用正則表達式的另一種方式?

+0

我想讓SQLite在Android中使用用戶定義的函數會很棘手,雖然我猜它可能與NDK相關 – antlersoft

回答

1

如上所述here

正則表達式運算符是用於正則表達式()的用戶功能的特殊語法。默認情況下沒有定義regexp()用戶函數,因此使用REGEXP運算符通常會導致錯誤消息。如果在運行時添加了名爲「regexp」的應用程序定義的SQL函數,那麼將調用該函數以實現REGEXP運算符。

但是有GLOB比LIKE稍微先進。

+0

GLOB看起來很有希望,我稍後會給出一個。謝謝! – gelakinetic