Skip to content

Commit 5c1dee8

Browse files
committed
Make expressions use AND instead of OR
1 parent 2ed0979 commit 5c1dee8

File tree

1 file changed

+9
-5
lines changed

1 file changed

+9
-5
lines changed

main.go

+9-5
Original file line numberDiff line numberDiff line change
@@ -183,22 +183,26 @@ func filterTagsByRegex(tags []string, expressions []string, invert bool) ([]stri
183183
return tags, nil
184184
}
185185
for _, tag := range tags {
186+
tagMiss := false
186187
for _, expression := range expressions {
187-
var expressionInvert = invert
188+
var expressionBool = !invert
188189
if strings.HasPrefix(expression, "!") {
189-
expressionInvert = !invert
190+
expressionBool = invert
190191
expression = strings.Trim(expression, "!")
191192
}
192193
retVal, err := regexp.MatchString(expression, tag)
193194
if err != nil {
194195
return retTags, err
195196
}
196-
if retVal == !expressionInvert {
197-
retTags = append(retTags, tag)
198-
// tag must match any expression, so continue with next tag on match
197+
if retVal != expressionBool {
198+
tagMiss = true
199199
break
200200
}
201201
}
202+
// tag must match all expression, so continue with next tag on match
203+
if !tagMiss {
204+
retTags = append(retTags, tag)
205+
}
202206
}
203207
return retTags, nil
204208
}

0 commit comments

Comments
 (0)