Select a subset of available options of a checklist/multi-select based on a regular expression - Groovy
Abstract
This code snippet sets a Checklist/Multi-select type field with a subset of the available options based on a regular expression
Logic
Access the available options of the Checklist/Multi-select type field and retain all the options that match the regular expression.
Snippet
def regExp = ~/^(?i).*<Text to match in the option>.*/ issue.getAvailableOptions("<Name of the field>").findAll{ it.getValue().matches(regExp) }
Placeholders
Placeholder | Description | Example |
---|---|---|
<Name of the field > | Name of the field of type Checkboxes/Select list(multiple choices) | Tasks list |
<Text in the option> | Text the options must contain to be selected | Installation |
Examples
The output of the code is a Collection<Option> which you could use in a Groovy expression, for example to - Set a Checkboxes/Multi-select field with a subset of its available options. Eg: Select all the Installation tasks in the Checkboxes/Multi-select type field in
- one of the Set Field Value post-functions
the Create issue post-function under Set fields of new issue section
def regExp = ~/^(?i).*installation.*/ issue.getAvailableOptions("Installations list").findAll{ it.getValue().matches(regExp) }
References
- Variables used in a Groovy expression
- Issue interface
- Accessing a field of Checkboxes/Multi-select type
- Groovy Documentation
Related articles