Grails findByName Regex

时间:2014-02-13 15:02:56

标签: regex grails findby

我有一个名为option的域类。有一个名为name的属性。

名称如下:

abc.1
abc.2
xxx.1
xxx.2
xxx.3

我想要所有以abc开头的选项。 通常我使用Options.findByName(“xyz”) 但我希望所有这一切都从abc开始。所以在那个例子中:

abc.1
abc.2

正则表达式可以是/ abc(。)。* /

但我必须写那个?

2 个答案:

答案 0 :(得分:2)

如果您只需要简单的“startsWith”条件,则可以使用:

  Options.findAllByNameLike("abc%")

答案 1 :(得分:0)

考虑在findAll / findByName方法中使用colusers 你试过这个吗?

Example

def result = ["abc1", "acb2", "abc3"].findAll { it ==~ /abc.*/ }

or in your case

def result = Options.findByName { it ==~ /abc.*/ }

或者参考此链接获取有关正则表达式http://groovy.codehaus.org/Regular+Expressions

的参考文献

干杯!