我有一个名为option
. 有一个属性叫做name
。
名字是这样的:
abc.1
abc.2
xxx.1
xxx.2
xxx.3
我想要所有以 abc 开头的选项。通常我使用 Options.findByName("xyz") 但我想要所有以 abc 开头的东西。所以在那个例子中:
abc.1
abc.2
正则表达式可以是 /abc(.).*/
但是我必须在哪里写呢?
如果您只需要简单的“startsWith”条件,您可以使用如下:
Options.findAllByNameLike("abc%")
考虑在 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
干杯!