Create
cancel
Showing results for 
Search instead for 
Did you mean: 
Sign up Log in

Adding custom link with multiple matches in regex

ben-dean-ontsys August 8, 2016

Is there a way to have the regex for a custom link have a repetition that creates multiple links? For example a commit message could contain:

Case 123, 456: Fix some stuff

And then the regex 

/Case (?:(\d),?\s*)+/

Would capture both the 123 and 456. Correct? But I don't see how to make the replacement URL work here so that there are two links.

Neither the documentation for the web UI nor the REST API give much information about how the regular expressions work. They mention having capture groups in the regex, but nothing about repetition. Maybe the regex library being used doesn't support repeated captures.

If this is impossible (which it seems like it might be), is there a better way to handle this particular commit message so both 123 and 456 are links? Certainly this regex

/(\d+)/

or even this one

/(\d{3,})/

would work, but that seems excessive and could match things in commit messages where it maybe shouldn't.

1 answer

1 accepted

0 votes
Answer accepted
aMarcus
Atlassian Team
Atlassian Team members are employees working across the company in a wide variety of roles.
August 9, 2016

The Bitbucket Cloud linkers are based on Python regular expressions. Bitbucket Cloud uses re.finditer to scan the text in a given field and create a new link (where appropriate) for each match returned. What you're trying to do may be possible, but we don't have any tests or examples of this. Also, I couldn't make something work easily off hand. I'd suggest using something like http://pythex.org/ to test out the possibilities and see what you can get.

ben-dean-ontsys August 9, 2016

Suggest an answer

Log in or Sign up to answer
TAGS
AUG Leaders

Atlassian Community Events