This function returns a text list with all substrings matching a given regular expression.


findPattern(text, regex) #Output: Text list



Parser expressionDescription


%{findPattern("Between 1900 and 2000 world population increase from 1.5 to 6.1 billions.", "\d+(\.\d+)?")}


This example returns:

1900,2000,1.5,6.1


%{findPattern(%{issue.somefield},"(?<=mailto:)([a-zA-Z0-9._-]+@[a-zA-Z0-9._-]+\.[a-zA-Z0-9_-]+)")}


Extract all email addresses from a text field

Assuming %{issue.somefield} is a multi-line text fiel containing email addresses (added as hyperlinks), e.g.

Hello,

please use admin@example.com instead of administrator@example.com for future reference.

Kind regards,
jwt@example.com

this example returns:

admin@example.com,administrator@example.com,jwt@example.com


%{findPattern(%{issue.lastComment},"(?<=\~accountid:).*?(?=\])")}


Extract all user mentions from the last comment

Assuming %{issue.lastComment} returns, e.g.

Hi [~Alina Grant|~accountid:5c90f542efd65d2d3d465d7c]!

this example returns:

5c90f542efd65d2d3d465d7c


%{findPattern(%{issue.lastComment},"([A-Z][A-Z0-9]+)-\d+")}


Extract all issue keys from the last comment

Assuming %{issue.lastComment} returns, e.g.

Hi [~admin],

this issues seems to be related to DEMO-1 and DEMO-2! 

this example returns:

DEMO-1,DEMO-2


%{findPattern(%{issue.somefield},"(?<=\|http://|\|https://).*?(?=\])")}


Extract all URLs from a text field

Assuming %{issue.somefield} returns, e.g.

The best documentation can be found at [apps.decadis.net|https://apps.decadis.net]. Make sure to check the space for [Jira Workflow Toolbox|https://apps.decadis.net/display/JWT]! If you can't find what you're looking for there, all you have left is [Google|https://www.google.com].

this example returns:

apps.decadis.net,apps.decadis.net/display/JWT,www.google.com



Parameters used in this function

ParameterInput (data type)Description
text

Any given text.
regex

A valid regular expression that grabs all substrings to be returned.



This function returns a


If you want to ignore the case, have a look at the findPatternIgnoreCase() function.

Parser expressionOutput


findPatternIgnoreCase("Grass is Green and Sky is Blue.", "red|green|blue")


["Green", "Blue"]


findPattern("Grass is Green and Sky is Blue.", "red|green|blue")


[ ]




Use cases and examples



Short description

Returns all substrings matching a given regular expression.

Output