저는 젠킨스를 사용하고 있으며 이름이 "_TEST"로 끝나는 모든 빌드 가능 작업을 일치시키고 싶지만 정규식을 통해 일치시킬 수는 없습니다.그루비를 사용하여 문자열의 끝을 일치 시키십시오
나는 여러 가지 방법을 시도했지만 groovy를 통해 일치시키지 못했습니다.
저는 젠킨스를 사용하고 있으며 이름이 "_TEST"로 끝나는 모든 빌드 가능 작업을 일치시키고 싶지만 정규식을 통해 일치시킬 수는 없습니다.그루비를 사용하여 문자열의 끝을 일치 시키십시오
나는 여러 가지 방법을 시도했지만 groovy를 통해 일치시키지 못했습니다.
등가하지만 this one보다 훨씬 더 간결 솔루션
import hudson.model.*
def list = Hudson.instance
.items
.findAll { it.buildable && it.name.endsWith("_TEST") }
.collect { it.name }
나는 그 단순함을 좋아합니다. 나 한테 직업 명을 어떻게 줄 수 있니? 출력은 다음과 같습니다 : [email protected] [Build_Job_TEST] – Kithral
새로운 답변을 작성하는 대신이 항목을 편집하여 각 항목을 해당 이름으로 변환하는 '수집'을 사용합니다. 스택 오버플로에 대한 코드를 설명하기 위해 서식이 약간 이상하고, 반드시 관용적 인 것은 아닙니다. –
사실 내 문제를 둘러싼 다른 방법을 발견했습니다. 죄송합니다, 월요일 아침 :
import hudson.model.*
def list = []
for (item in Hudson.instance.items.findAll()) {
if (item.name.endsWith("_TEST")) {
if (item.isBuildable()) {
list.push(item.name)
}
}
}
return list
"그루비 웨이": Hudson.instance.items.findAll {it.isBuildable() && it.name.endsWith ("_ TEST")} ' –
입니다 당신은 당신이 시도한 코드를 추가 할 수 있습니까? 귀하의 질문에 정확하게 답할 수 있도록 도와 드리겠습니다. –
정규식 또는 그루비? 그들은 그렇게 똑같지 않습니다! [Regex] (https://en.wikipedia.org/wiki/Regular_expression)는 문자열 검색/비교를 수행하는 표현식 구문입니다. [Groovy] (http://www.groovy-lang.org/)는 완전한 프로그래밍 언어입니다. – Andreas
그루비 스크립트 내에서 정규 표현식을 사용하기 시작했습니다. 나중에 나는 ensWith() 함수를 가로 질렀다. 그것은 나를 위해 일했다. – Kithral