Jenkins Groovy-如何正则化具有子字符串QA的字符串?

Jenkins Groovy-如何正则化具有子字符串QA的字符串?,jenkins,groovy,jenkins-groovy,Jenkins,Groovy,Jenkins Groovy,在以下代码中: print env.gitlabSourceBranch // prints develop if ((env.gitlabSourceBranch !=~ ".*QA.*").matches()) { error('Aborting Build - not a QA branch') } 仅当env.gitlabSourceBranch中包含子字符串QA时,流才应继续,否则将带错误退出 如果env.

在以下代码中:

        print env.gitlabSourceBranch // prints develop

        if ((env.gitlabSourceBranch !=~ ".*QA.*").matches()) {

            error('Aborting Build - not a QA branch')
        }
仅当
env.gitlabSourceBranch
中包含子字符串
QA
时,流才应继续,否则将带错误退出


如果
env.gitlabSourceBranch
值为
develope
,则如果条件试图与regex
*QA.*
进行比较,但我得到以下错误:

hudson.remoting.ProxyException: groovy.lang.MissingMethodException: No signature of method: java.lang.Boolean.matches() is applicable for argument types: () values: []

如何解决此错误?我是否应该使用
if(!(env.gitlabSourceBranch==~“*QA.*){}

是:
if(!(env.gitlabSourceBranch==~”*QA.*)
if(!(env.gitlabSourceBranch=~“*QA.*).matches())
。作为旁注,使用
if(!env.gitlabSourceBranch.contains('QA'))
Yes:
if(!(env.gitlabSourceBranch==~“*QA.*))
if(!(env.gitlabSourceBranch=~*QA.*)matches()
。作为旁注,如果(!env.gitlabSourceBranch.contains('QA'))