So I wanted the first subquestion, second row to be allowed to be left blank...question id is 12DOT2
So I tried this in the "Validation" field, also set Mandatory = No:
regexMatch("^([0-9]|[1-8][0-9]|9[0-9]|[1-8][0-9]{2}|9[0-8][0-9]|99[0-9]|1000)$",Q12DOT2_SQ001_X001) and
((regexMatch("^([0-9]|[1-8][0-9]|9[0-9]|[1-8][0-9]{2}|9[0-8][0-9]|99[0-9]|1000)$",Q12DOT2_SQ001_X002)) or (is_empty(Q12DOT2_SQ001_X002)) or (Q12DOT2_SQ001_X002=='N/A'))
regexMatch("^([0-9]|[1-8][0-9]|9[0-9]|[1-8][0-9]{2}|9[0-8][0-9]|99[0-9]|1000)$",Q12DOT2_SQ002_X001) and
regexMatch("^([0-9]|[1-8][0-9]|9[0-9]|[1-8][0-9]{2}|9[0-8][0-9]|99[0-9]|1000)$",Q12DOT2_SQ002_X002) and
regexMatch("^([0-9]|[1-8][0-9]|9[0-9]|[1-8][0-9]{2}|9[0-8][0-9]|99[0-9]|1000)$",Q12DOT2_SQ003_X001) and
regexMatch("^([0-9]|[1-8][0-9]|9[0-9]|[1-8][0-9]{2}|9[0-8][0-9]|99[0-9]|1000)$",Q12DOT2_SQ004_X002) and
regexMatch("^([0-9]|[1-8][0-9]|9[0-9]|[1-8][0-9]{2}|9[0-8][0-9]|99[0-9]|1000)$",Q12DOT2_SQ004_X001) and
regexMatch("^([0-9]|[1-8][0-9]|9[0-9]|[1-8][0-9]{2}|9[0-8][0-9]|99[0-9]|1000)$",Q12DOT2_SQ004_X002)
When I look at the "Check Survey Logic" it blows up with red...
Should I be replacing Q1 in your example, with Q12DOT2 ?
On the check survey logic page for the question
In the "Relevance [Validation] (Default value)"
Code:
((sum((if(is_empty(asG3S1Q12DOT2_12a_a.NAOK), 0, ! regexMatch("regexMatch(" ^ ( [ 0 - 9 ] | [ 1 - 8 ] [ 0 - 9 ] | 9 [ 0 - 9 ] | [ 1 - 8 ] [ 0 - 9 ] { 2 } | 9 [ 0 - 8 ] [ 0 - 9 ] | 99 [ 0 - 9 ] | 1000) $ ",Q12DOT2_SQ001_X001) and ((regexMatch(" ^ ( [ 0 - 9 ] | [ 1 - 8 ] [ 0 - 9 ] | 9 [ 0 - 9 ] | [ 1 - 8 ] [ 0 - 9 ] { 2 } | 9 [ 0 - 8 ] [ 0 - 9 ] | 99 [ 0 - 9 ] | 1000) $ ",Q12DOT2_SQ001_X002)) or (is_empty(Q12DOT2_SQ001_X002)) or (Q12DOT2_SQ001_X002=='N/A')) regexMatch(" ^ ( [ 0 - 9 ] | [ 1 - 8 ] [ 0 - 9 ] | 9 [ 0 - 9 ] | [ 1 - 8 ] [ 0 - 9 ] { 2 } | 9 [ 0 - 8 ] [ 0 - 9 ] | 99 [ 0 - 9 ] | 1000) $ ",Q12DOT2_SQ002_X001) and regexMatch(" ^ ( [ 0 - 9 ] | [ 1 - 8 ] [ 0 - 9 ] | 9 [ 0 - 9 ] | [ 1 - 8 ] [ 0 - 9 ] { 2 } | 9 [ 0 - 8 ] [ 0 - 9 ] | 99 [ 0 - 9 ] | 1000) $ ",Q12DOT2_SQ002_X002) and regexMatch(" ^ ( [ 0 - 9 ] | [ 1 - 8 ] [ 0 - 9 ] | 9 [ 0 - 9 ] | [ 1 - 8 ] [ 0 - 9 ] { 2 } | 9 [ 0 - 8 ] [ 0 - 9 ] | 99 [ 0 - 9 ] | 1000) $ ",Q12DOT2_SQ003_X001) and regexMatch(" ^ ( [ 0 - 9 ] | [ 1 - 8 ] [ 0 - 9 ] | 9 [ 0 - 9 ] | [ 1 - 8 ] [ 0 - 9 ] { 2 } | 9 [ 0 - 8 ] [ 0 - 9 ] | 99 [ 0 - 9 ] | 1000) $ ",Q12DOT2_SQ004_X002) and regexMatch(" ^ ( [ 0 - 9 ] | [ 1 - 8 ] [ 0 - 9 ] | 9 [ 0 - 9 ] | [ 1 - 8 ] [ 0 - 9 ] { 2 } | 9 [ 0 - 8 ] [ 0 - 9 ] | 99 [ 0 - 9 ] | 1000) $ ",Q12DOT2_SQ004_X001) and regexMatch(" ^ ( [ 0 - 9 ] | [ 1 - 8 ] [ 0 - 9 ] | 9 [ 0 - 9 ] | [ 1 - 8 ] [ 0 - 9 ] { 2 } | 9 [ 0 - 8 ] [ 0 - 9 ] | 99 [ 0 - 9 ] | 1000) $ ",Q12DOT2_SQ004_X002)", asG3S1Q12DOT2_12a_a.NAOK))), (if(is_empty(asG3S1Q12DOT2_12a_b.NAOK), 0, ! regexMatch("regexMatch(" ^ ( [ 0 - 9 ] | [ 1 - 8 ] [ 0 - 9 ] | 9 [ 0 - 9 ] | [ 1 - 8 ] [ 0 - 9 ] { 2 } | 9 [ 0 - 8 ] [ 0 - 9 ] | 99 [ 0 - 9 ] | 1000) $ ",Q12DOT2_SQ001_X001) and ((regexMatch(" ^ ( [ 0 - 9 ] | [ 1 - 8 ] [ 0 - 9 ] | 9 [ 0 - 9 ] | [ 1 - 8 ] [ 0 - 9 ] { 2 } | 9 [ 0 - 8 ] [ 0 - 9 ] | 99 [ 0 - 9 ] | 1000) $ ",Q12DOT2_SQ001_X002)) or (is_empty(Q12DOT2_SQ001_X002)) or (Q12DOT2_SQ001_X002=='N/A')) regexMatch(" ^ ( [ 0 - 9 ] | [ 1 - 8 ] [ 0 - 9 ] | 9 [ 0 - 9 ] | [ 1 - 8 ] [ 0 - 9 ] { 2 } | 9 [ 0 - 8 ] [ 0 - 9 ] | 99 [ 0 - 9 ] | 1000) $ ",Q12DOT2_SQ002_X001) and regexMatch(" ^ ( [ 0 - 9 ] | [ 1 - 8 ] [ 0 - 9 ] | 9 [ 0 - 9 ] | [ 1 - 8 ] [ 0 - 9 ] { 2 } | 9 [ 0 - 8 ] [ 0 - 9 ] | 99 [ 0 - 9 ] | 1000) $ ",Q12DOT2_SQ002_X002) and regexMatch(" ^ ( [ 0 - 9 ] | [ 1 - 8 ] [ 0 - 9 ] | 9 [ 0 - 9 ] | [ 1 - 8 ] [ 0 - 9 ] { 2 } | 9 [ 0 - 8 ] [ 0 - 9 ] | 99 [ 0 - 9 ] | 1000) $ ",Q12DOT2_SQ003_X001) and regexMatch(" ^ ( [ 0 - 9 ] | [ 1 - 8 ] [ 0 - 9 ] | 9 [ 0 - 9 ] | [ 1 - 8 ] [ 0 - 9 ] { 2 } | 9 [ 0 - 8 ] [ 0 - 9 ] | 99 [ 0 - 9 ] | 1000) $ ",Q12DOT2_SQ004_X002) and regexMatch(" ^ ( [ 0 - 9 ] | [ 1 - 8 ] [ 0 - 9 ] | 9 [ 0 - 9 ] | [ 1 - 8 ] [ 0 - 9 ] { 2 } | 9 [ 0 - 8 ] [ 0 - 9 ] | 99 [ 0 - 9 ] | 1000) $ ",Q12DOT2_SQ004_X001) and regexMatch(" ^ ( [ 0 - 9 ] | [ 1 - 8 ] [ 0 - 9 ] | 9 [ 0 - 9 ] | [ 1 - 8 ] [ 0 - 9 ] { 2 } | 9 [ 0 - 8 ] [ 0 - 9 ] | 99 [ 0 - 9 ] | 1000) $ ",Q12DOT2_SQ004_X002)", asG3S1Q12DOT2_12a_b.NAOK))), (if(is_empty(asG3S1Q12DOT2_12b_a.NAOK), 0, ! regexMatch("regexMatch(" ^ ( [ 0 - 9 ] | [ 1 - 8 ] [ 0 - 9 ] | 9 [ 0 - 9 ] | [ 1 - 8 ] [ 0 - 9 ] { 2 } | 9 [ 0 - 8 ] [ 0 - 9 ] | 99 [ 0 - 9 ] | 1000) $ ",Q12DOT2_SQ001_X001) and ((regexMatch(" ^ ( [ 0 - 9 ] | [ 1 - 8 ] [ 0 - 9 ] | 9 [ 0 - 9 ] | [ 1 - 8 ] [ 0 - 9 ] { 2 } | 9 [ 0 - 8 ] [ 0 - 9 ] | 99 [ 0 - 9 ] | 1000) $ ",Q12DOT2_SQ001_X002)) or (is_empty(Q12DOT2_SQ001_X002)) or (Q12DOT2_SQ001_X002=='N/A')) regexMatch(" ^ ( [ 0 - 9 ] | [ 1 - 8 ] [ 0 - 9 ] | 9 [ 0 - 9 ] | [ 1 - 8 ] [ 0 - 9 ] { 2 } | 9 [ 0 - 8 ] [ 0 - 9 ] | 99 [ 0 - 9 ] | 1000) $ ",Q12DOT2_SQ002_X001) and regexMatch(" ^ ( [ 0 - 9 ] | [ 1 - 8 ] [ 0 - 9 ] | 9 [ 0 - 9 ] | [ 1 - 8 ] [ 0 - 9 ] { 2 } | 9 [ 0 - 8 ] [ 0 - 9 ] | 99 [ 0 - 9 ] | 1000) $ ",Q12DOT2_SQ002_X002) and regexMatch(" ^ ( [ 0 - 9 ] | [ 1 - 8 ] [ 0 - 9 ] | 9 [ 0 - 9 ] | [ 1 - 8 ] [ 0 - 9 ] { 2 } | 9 [ 0 - 8 ] [ 0 - 9 ] | 99 [ 0 - 9 ] | 1000) $ ",Q12DOT2_SQ003_X001) and regexMatch(" ^ ( [ 0 - 9 ] | [ 1 - 8 ] [ 0 - 9 ] | 9 [ 0 - 9 ] | [ 1 - 8 ] [ 0 - 9 ] { 2 } | 9 [ 0 - 8 ] [ 0 - 9 ] | 99 [ 0 - 9 ] | 1000) $ ",Q12DOT2_SQ004_X002) and regexMatch(" ^ ( [ 0 - 9 ] | [ 1 - 8 ] [ 0 - 9 ] | 9 [ 0 - 9 ] | [ 1 - 8 ] [ 0 - 9 ] { 2 } | 9 [ 0 - 8 ] [ 0 - 9 ] | 99 [ 0 - 9 ] | 1000) $ ",Q12DOT2_SQ004_X001) and regexMatch(" ^ ( [ 0 - 9 ] | [ 1 - 8 ] [ 0 - 9 ] | 9 [ 0 - 9 ] | [ 1 - 8 ] [ 0 - 9 ] { 2 } | 9 [ 0 - 8 ] [ 0 - 9 ] | 99 [ 0 - 9 ] | 1000) $ ",Q12DOT2_SQ004_X002)", asG3S1Q12DOT2_12b_a.NAOK))), (if(is_empty(asG3S1Q12DOT2_12b_b.NAOK), 0, ! regexMatch("regexMatch(" ^ ( [ 0 - 9 ] | [ 1 - 8 ] [ 0 - 9 ] | 9 [ 0 - 9 ] | [ 1 - 8 ] [ 0 - 9 ] { 2 } | 9 [ 0 - 8 ] [ 0 - 9 ] | 99 [ 0 - 9 ] | 1000) $ ",Q12DOT2_SQ001_X001) and ((regexMatch(" ^ ( [ 0 - 9 ] | [ 1 - 8 ] [ 0 - 9 ] | 9 [ 0 - 9 ] | [ 1 - 8 ] [ 0 - 9 ] { 2 } | 9 [ 0 - 8 ] [ 0 - 9 ] | 99 [ 0 - 9 ] | 1000) $ ",Q12DOT2_SQ001_X002)) or (is_empty(Q12DOT2_SQ001_X002)) or (Q12DOT2_SQ001_X002=='N/A')) regexMatch(" ^ ( [ 0 - 9 ] | [ 1 - 8 ] [ 0 - 9 ] | 9 [ 0 - 9 ] | [ 1 - 8 ] [ 0 - 9 ] { 2 } | 9 [ 0 - 8 ] [ 0 - 9 ] | 99 [ 0 - 9 ] | 1000) $ ",Q12DOT2_SQ002_X001) and regexMatch(" ^ ( [ 0 - 9 ] | [ 1 - 8 ] [ 0 - 9 ] | 9 [ 0 - 9 ] | [ 1 - 8 ] [ 0 - 9 ] { 2 } | 9 [ 0 - 8 ] [ 0 - 9 ] | 99 [ 0 - 9 ] | 1000) $ ",Q12DOT2_SQ002_X002) and regexMatch(" ^ ( [ 0 - 9 ] | [ 1 - 8 ] [ 0 - 9 ] | 9 [ 0 - 9 ] | [ 1 - 8 ] [ 0 - 9 ] { 2 } | 9 [ 0 - 8 ] [ 0 - 9 ] | 99 [ 0 - 9 ] | 1000) $ ",Q12DOT2_SQ003_X001) and regexMatch(" ^ ( [ 0 - 9 ] | [ 1 - 8 ] [ 0 - 9 ] | 9 [ 0 - 9 ] | [ 1 - 8 ] [ 0 - 9 ] { 2 } | 9 [ 0 - 8 ] [ 0 - 9 ] | 99 [ 0 - 9 ] | 1000) $ ",Q12DOT2_SQ004_X002) and regexMatch(" ^ ( [ 0 - 9 ] | [ 1 - 8 ] [ 0 - 9 ] | 9 [ 0 - 9 ] | [ 1 - 8 ] [ 0 - 9 ] { 2 } | 9 [ 0 - 8 ] [ 0 - 9 ] | 99 [ 0 - 9 ] | 1000) $ ",Q12DOT2_SQ004_X001) and regexMatch(" ^ ( [ 0 - 9 ] | [ 1 - 8 ] [ 0 - 9 ] | 9 [ 0 - 9 ] | [ 1 - 8 ] [ 0 - 9 ] { 2 } | 9 [ 0 - 8 ] [ 0 - 9 ] | 99 [ 0 - 9 ] | 1000) $ ",Q12DOT2_SQ004_X002)", asG3S1Q12DOT2_12b_b.NAOK))), (if(is_empty(asG3S1Q12DOT2_12c_a.NAOK), 0, ! regexMatch("regexMatch(" ^ ( [ 0 - 9 ] | [ 1 - 8 ] [ 0 - 9 ] | 9 [ 0 - 9 ] | [ 1 - 8 ] [ 0 - 9 ] { 2 } | 9 [ 0 - 8 ] [ 0 - 9 ] | 99 [ 0 - 9 ] | 1000) $ ",Q12DOT2_SQ001_X001) and ((regexMatch(" ^ ( [ 0 - 9 ] | [ 1 - 8 ] [ 0 - 9 ] | 9 [ 0 - 9 ] | [ 1 - 8 ] [ 0 - 9 ] { 2 } | 9 [ 0 - 8 ] [ 0 - 9 ] | 99 [ 0 - 9 ] | 1000) $ ",Q12DOT2_SQ001_X002)) or (is_empty(Q12DOT2_SQ001_X002)) or (Q12DOT2_SQ001_X002=='N/A')) regexMatch(" ^ ( [ 0 - 9 ] | [ 1 - 8 ] [ 0 - 9 ] | 9 [ 0 - 9 ] | [ 1 - 8 ] [ 0 - 9 ] { 2 } | 9 [ 0 - 8 ] [ 0 - 9 ] | 99 [ 0 - 9 ] | 1000) $ ",Q12DOT2_SQ002_X001) and regexMatch(" ^ ( [ 0 - 9 ] | [ 1 - 8 ] [ 0 - 9 ] | 9 [ 0 - 9 ] | [ 1 - 8 ] [ 0 - 9 ] { 2 } | 9 [ 0 - 8 ] [ 0 - 9 ] | 99 [ 0 - 9 ] | 1000) $ ",Q12DOT2_SQ002_X002) and regexMatch(" ^ ( [ 0 - 9 ] | [ 1 - 8 ] [ 0 - 9 ] | 9 [ 0 - 9 ] | [ 1 - 8 ] [ 0 - 9 ] { 2 } | 9 [ 0 - 8 ] [ 0 - 9 ] | 99 [ 0 - 9 ] | 1000) $ ",Q12DOT2_SQ003_X001) and regexMatch(" ^ ( [ 0 - 9 ] | [ 1 - 8 ] [ 0 - 9 ] | 9 [ 0 - 9 ] | [ 1 - 8 ] [ 0 - 9 ] { 2 } | 9 [ 0 - 8 ] [ 0 - 9 ] | 99 [ 0 - 9 ] | 1000) $ ",Q12DOT2_SQ004_X002) and regexMatch(" ^ ( [ 0 - 9 ] | [ 1 - 8 ] [ 0 - 9 ] | 9 [ 0 - 9 ] | [ 1 - 8 ] [ 0 - 9 ] { 2 } | 9 [ 0 - 8 ] [ 0 - 9 ] | 99 [ 0 - 9 ] | 1000) $ ",Q12DOT2_SQ004_X001) and regexMatch(" ^ ( [ 0 - 9 ] | [ 1 - 8 ] [ 0 - 9 ] | 9 [ 0 - 9 ] | [ 1 - 8 ] [ 0 - 9 ] { 2 } | 9 [ 0 - 8 ] [ 0 - 9 ] | 99 [ 0 - 9 ] | 1000) $ ",Q12DOT2_SQ004_X002)", asG3S1Q12DOT2_12c_a.NAOK))), (if(is_empty(asG3S1Q12DOT2_12c_b.NAOK), 0, ! regexMatch("regexMatch(" ^ ( [ 0 - 9 ] | [ 1 - 8 ] [ 0 - 9 ] | 9 [ 0 - 9 ] | [ 1 - 8 ] [ 0 - 9 ] { 2 } | 9 [ 0 - 8 ] [ 0 - 9 ] | 99 [ 0 - 9 ] | 1000) $ ",Q12DOT2_SQ001_X001) and ((regexMatch(" ^ ( [ 0 - 9 ] | [ 1 - 8 ] [ 0 - 9 ] | 9 [ 0 - 9 ] | [ 1 - 8 ] [ 0 - 9 ] { 2 } | 9 [ 0 - 8 ] [ 0 - 9 ] | 99 [ 0 - 9 ] | 1000) $ ",Q12DOT2_SQ001_X002)) or (is_empty(Q12DOT2_SQ001_X002)) or (Q12DOT2_SQ001_X002=='N/A')) regexMatch(" ^ ( [ 0 - 9 ] | [ 1 - 8 ] [ 0 - 9 ] | 9 [ 0 - 9 ] | [ 1 - 8 ] [ 0 - 9 ] { 2 } | 9 [ 0 - 8 ] [ 0 - 9 ] | 99 [ 0 - 9 ] | 1000) $ ",Q12DOT2_SQ002_X001) and regexMatch(" ^ ( [ 0 - 9 ] | [ 1 - 8 ] [ 0 - 9 ] | 9 [ 0 - 9 ] | [ 1 - 8 ] [ 0 - 9 ] { 2 } | 9 [ 0 - 8 ] [ 0 - 9 ] | 99 [ 0 - 9 ] | 1000) $ ",Q12DOT2_SQ002_X002) and regexMatch(" ^ ( [ 0 - 9 ] | [ 1 - 8 ] [ 0 - 9 ] | 9 [ 0 - 9 ] | [ 1 - 8 ] [ 0 - 9 ] { 2 } | 9 [ 0 - 8 ] [ 0 - 9 ] | 99 [ 0 - 9 ] | 1000) $ ",Q12DOT2_SQ003_X001) and regexMatch(" ^ ( [ 0 - 9 ] | [ 1 - 8 ] [ 0 - 9 ] | 9 [ 0 - 9 ] | [ 1 - 8 ] [ 0 - 9 ] { 2 } | 9 [ 0 - 8 ] [ 0 - 9 ] | 99 [ 0 - 9 ] | 1000) $ ",Q12DOT2_SQ004_X002) and regexMatch(" ^ ( [ 0 - 9 ] | [ 1 - 8 ] [ 0 - 9 ] | 9 [ 0 - 9 ] | [ 1 - 8 ] [ 0 - 9 ] { 2 } | 9 [ 0 - 8 ] [ 0 - 9 ] | 99 [ 0 - 9 ] | 1000) $ ",Q12DOT2_SQ004_X001) and regexMatch(" ^ ( [ 0 - 9 ] | [ 1 - 8 ] [ 0 - 9 ] | 9 [ 0 - 9 ] | [ 1 - 8 ] [ 0 - 9 ] { 2 } | 9 [ 0 - 8 ] [ 0 - 9 ] | 99 [ 0 - 9 ] | 1000) $ ",Q12DOT2_SQ004_X002)", asG3S1Q12DOT2_12c_b.NAOK))), (if(is_empty(asG3S1Q12DOT2_12d_a.NAOK), 0, ! regexMatch("regexMatch(" ^ ( [ 0 - 9 ] | [ 1 - 8 ] [ 0 - 9 ] | 9 [ 0 - 9 ] | [ 1 - 8 ] [ 0 - 9 ] { 2 } | 9 [ 0 - 8 ] [ 0 - 9 ] | 99 [ 0 - 9 ] | 1000) $ ",Q12DOT2_SQ001_X001) and ((regexMatch(" ^ ( [ 0 - 9 ] | [ 1 - 8 ] [ 0 - 9 ] | 9 [ 0 - 9 ] | [ 1 - 8 ] [ 0 - 9 ] { 2 } | 9 [ 0 - 8 ] [ 0 - 9 ] | 99 [ 0 - 9 ] | 1000) $ ",Q12DOT2_SQ001_X002)) or (is_empty(Q12DOT2_SQ001_X002)) or (Q12DOT2_SQ001_X002=='N/A')) regexMatch(" ^ ( [ 0 - 9 ] | [ 1 - 8 ] [ 0 - 9 ] | 9 [ 0 - 9 ] | [ 1 - 8 ] [ 0 - 9 ] { 2 } | 9 [ 0 - 8 ] [ 0 - 9 ] | 99 [ 0 - 9 ] | 1000) $ ",Q12DOT2_SQ002_X001) and regexMatch(" ^ ( [ 0 - 9 ] | [ 1 - 8 ] [ 0 - 9 ] | 9 [ 0 - 9 ] | [ 1 - 8 ] [ 0 - 9 ] { 2 } | 9 [ 0 - 8 ] [ 0 - 9 ] | 99 [ 0 - 9 ] | 1000) $ ",Q12DOT2_SQ002_X002) and regexMatch(" ^ ( [ 0 - 9 ] | [ 1 - 8 ] [ 0 - 9 ] | 9 [ 0 - 9 ] | [ 1 - 8 ] [ 0 - 9 ] { 2 } | 9 [ 0 - 8 ] [ 0 - 9 ] | 99 [ 0 - 9 ] | 1000) $ ",Q12DOT2_SQ003_X001) and regexMatch(" ^ ( [ 0 - 9 ] | [ 1 - 8 ] [ 0 - 9 ] | 9 [ 0 - 9 ] | [ 1 - 8 ] [ 0 - 9 ] { 2 } | 9 [ 0 - 8 ] [ 0 - 9 ] | 99 [ 0 - 9 ] | 1000) $ ",Q12DOT2_SQ004_X002) and regexMatch(" ^ ( [ 0 - 9 ] | [ 1 - 8 ] [ 0 - 9 ] | 9 [ 0 - 9 ] | [ 1 - 8 ] [ 0 - 9 ] { 2 } | 9 [ 0 - 8 ] [ 0 - 9 ] | 99 [ 0 - 9 ] | 1000) $ ",Q12DOT2_SQ004_X001) and regexMatch(" ^ ( [ 0 - 9 ] | [ 1 - 8 ] [ 0 - 9 ] | 9 [ 0 - 9 ] | [ 1 - 8 ] [ 0 - 9 ] { 2 } | 9 [ 0 - 8 ] [ 0 - 9 ] | 99 [ 0 - 9 ] | 1000) $ ",Q12DOT2_SQ004_X002)", asG3S1Q12DOT2_12d_a.NAOK))), (if(is_empty(asG3S1Q12DOT2_12d_b.NAOK), 0, ! regexMatch("regexMatch(" ^ ( [ 0 - 9 ] | [ 1 - 8 ] [ 0 - 9 ] | 9 [ 0 - 9 ] | [ 1 - 8 ] [ 0 - 9 ] { 2 } | 9 [ 0 - 8 ] [ 0 - 9 ] | 99 [ 0 - 9 ] | 1000) $ ",Q12DOT2_SQ001_X001) and ((regexMatch(" ^ ( [ 0 - 9 ] | [ 1 - 8 ] [ 0 - 9 ] | 9 [ 0 - 9 ] | [ 1 - 8 ] [ 0 - 9 ] { 2 } | 9 [ 0 - 8 ] [ 0 - 9 ] | 99 [ 0 - 9 ] | 1000) $ ",Q12DOT2_SQ001_X002)) or (is_empty(Q12DOT2_SQ001_X002)) or (Q12DOT2_SQ001_X002=='N/A')) regexMatch(" ^ ( [ 0 - 9 ] | [ 1 - 8 ] [ 0 - 9 ] | 9 [ 0 - 9 ] | [ 1 - 8 ] [ 0 - 9 ] { 2 } | 9 [ 0 - 8 ] [ 0 - 9 ] | 99 [ 0 - 9 ] | 1000) $ ",Q12DOT2_SQ002_X001) and regexMatch(" ^ ( [ 0 - 9 ] | [ 1 - 8 ] [ 0 - 9 ] | 9 [ 0 - 9 ] | [ 1 - 8 ] [ 0 - 9 ] { 2 } | 9 [ 0 - 8 ] [ 0 - 9 ] | 99 [ 0 - 9 ] | 1000) $ ",Q12DOT2_SQ002_X002) and regexMatch(" ^ ( [ 0 - 9 ] | [ 1 - 8 ] [ 0 - 9 ] | 9 [ 0 - 9 ] | [ 1 - 8 ] [ 0 - 9 ] { 2 } | 9 [ 0 - 8 ] [ 0 - 9 ] | 99 [ 0 - 9 ] | 1000) $ ",Q12DOT2_SQ003_X001) and regexMatch(" ^ ( [ 0 - 9 ] | [ 1 - 8 ] [ 0 - 9 ] | 9 [ 0 - 9 ] | [ 1 - 8 ] [ 0 - 9 ] { 2 } | 9 [ 0 - 8 ] [ 0 - 9 ] | 99 [ 0 - 9 ] | 1000) $ ",Q12DOT2_SQ004_X002) and regexMatch(" ^ ( [ 0 - 9 ] | [ 1 - 8 ] [ 0 - 9 ] | 9 [ 0 - 9 ] | [ 1 - 8 ] [ 0 - 9 ] { 2 } | 9 [ 0 - 8 ] [ 0 - 9 ] | 99 [ 0 - 9 ] | 1000) $ ",Q12DOT2_SQ004_X001) and regexMatch(" ^ ( [ 0 - 9 ] | [ 1 - 8 ] [ 0 - 9 ] | 9 [ 0 - 9 ] | [ 1 - 8 ] [ 0 - 9 ] { 2 } | 9 [ 0 - 8 ] [ 0 - 9 ] | 99 [ 0 - 9 ] | 1000) $ ",Q12DOT2_SQ004_X002)", asG3S1Q12DOT2_12d_b.NAOK)))) == 0))
something not quite right here, it's like it's trying to put my conditionals inside a sum function which has another regexMatch function.