2013-05-17 61 views
0

我試圖做的SQL的東西在Groovy的類似:WHERE NAME LIKE%JOHN%Groovy中的FindAll粗略/像

這裏是我有什麼。

response.entries = json.entries.findAll { it.name.toUpperCase() =~ /lookupQuery.toString().toUpperCase()/ } 

這是工作,如果我使用==,但事情是錯我的代碼做一個LIKE搜索。

乾杯!

大衛

回答

1

問題是lookupQuery未在正則表達式插入。 但是,在這種情況下,您並不需要使用正則表達式:

json.entries.findAll { it.name.toUpperCase().contains(lookupQuery.toString().toUpperCase()) } 
1

我想你需要:

json.entries.findAll { it.name.toUpperCase() ==~ /.*${lookupQuery.toUpperCase()}.*/ }