Script Runner Validator

Adolfo Casari
Rising Star
Rising Star
Rising Stars are recognized for providing high-quality answers to other users. Rising Stars receive a certificate of achievement and are on the path to becoming Community Leaders.
April 16, 2014

Hi, I am trying to check that when creating an issue a custom field (type text) is either empty (i.e. no value submitted) or it has exactly 6 digits. I am using this scripted validator expression:

cfValues['CF name'] ==~ /(^$|\d{6})/

However it doesn't accept an empty 'CF name' value. The ^$ matches empty strings.

I tried the above REGEX in a groovy script and it works OK, so for some reason cfValues['CF name'] is not an empty string when nothing is submitted.

Thanks in advance,

1 answer

1 accepted

2 votes
Answer accepted
JamieA
Rising Star
Rising Star
Rising Stars are recognized for providing high-quality answers to other users. Rising Stars receive a certificate of achievement and are on the path to becoming Community Leaders.
April 16, 2014

It's probably null rather than an empty string. Why don't you try:

! cfValues['CF name'] || cfValues['CF name'] ==~ /\d{6}/

I removed the capture, don't see the need. Untested.

Adolfo Casari
Rising Star
Rising Star
Rising Stars are recognized for providing high-quality answers to other users. Rising Stars receive a certificate of achievement and are on the path to becoming Community Leaders.
April 16, 2014

Thanks, that works!

Suggest an answer

Log in or Sign up to answer