如何在Groovy的列表中传递正则表达式?

时间:2015-08-07 15:08:22

标签: regex groovy

我尝试过这些东西,但它对我不起作用:

def fileNames = [/ReadyAPI-\d.\d.\d.vmoptions/, 'loadtestrunner.bat', 'ready-api.bat', 'securitytestrunner.bat']

def fileNames = ['ReadyAPI-\\d.\\d.\\d.vmoptions', 'loadtestrunner.bat', 'ready-api.bat', 'securitytestrunner.bat']

我想要做的是系统中将存在以下两个文件中的一个: 'ReadyAPI-1.2.2.vmoptions'或'ReadyAPI-1.3.1.vmoptions'。

我对Groovy比较新,所以我可能没有看到常见的问题。所以,请耐心等待。感谢

1 个答案:

答案 0 :(得分:1)

您需要先获取文件名,然后将其放入列表中。您可以像THIRD_ID / THIRD_PARENT_ID 60 / - 61 / 123 62 / 345 63 / 345 这样使用Groovy的FileNameByRegexFinder来查找带有正则表达式的文件:

groovy.utils

请注意,def optionsFile = new FileNameByRegexFinder() .getFileNames('.', /ReadyAPI-\d.\d.\d.vmoptions/).first() def fileNames = [optionsFile, 'loadtestrunner.bat', ...] 的第一个参数是要搜索的基本目录,您可能需要更改该方案。