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'))