Cody

# Problem 2811. Regex match

Solution 2169534

Submitted on 22 Mar 2020 by Nikolaos Nikolaou
This solution is locked. To view this solution, you need to provide a solution of the same size or smaller.

### Test Suite

Test Status Code Input and Output
1   Pass
userinput = '2015'; pattern = '[0-9]+'; isvalid = true; assert(isequal(regex_match(userinput, pattern), isvalid))

s = 0 s = 1 string = 1×1 cell array {'2015'}

2   Pass
userinput = '2015b'; pattern = '[0-9]+'; isvalid = false; assert(isequal(regex_match(userinput, pattern), isvalid))

s = 2 string = 1×1 cell array {'2015b'}

3   Pass
userinput = {'BA63RDCL' 'BD51SMR', 'YK02OML', 'TA71AAL', ' BD51GHJ ', 'GX62PTL', 'IQ14ZXY'}; pattern = '[A-HK-PR-WY][A-Y](51|(0|5)[2-9]|(1|6)[0-4])[A-Z]{3}'; isvalid = [false true true false false true false]; assert(isequal(regex_match(userinput, pattern), isvalid))

s = 3

4   Pass
userinput = {'Alan Smith', '05 12 1962', 'AB123456C'}; pattern = {'([A-Z][a-z]+ )+([A-Z][a-z]+)', '(0[1-9]|[12][0-9]|3[01]) (0[1-9]|1[0-2]) (19[0-9]{2}|200[0-9]|201[0-4])', '[A-CEGHJ-PRST-W-Z][A-CEGHJ-NPRST-W-Z][0-9]{6}[A-D]'}; isvalid = [true true true]; assert(isequal(regex_match(userinput, pattern), isvalid))

s = 4

5   Pass
userinput = {'A1an Smith', '05 12 1962 2', 'NT987654A'}; pattern = {'([A-Z][a-z]+ )+([A-Z][a-z]+)', '(0[1-9]|[12][0-9]|3[01]) (0[1-9]|1[0-2]) (19[0-9]{2}|200[0-9]|201[0-4])', '[A-CEGHJ-PRST-W-Z][A-CEGHJ-NPRST-W-Z][0-9]{6}[A-D]'}; isvalid = [false false true]; assert(isequal(regex_match(userinput, pattern), isvalid))

s = 5

6   Pass
userinput = 'BD51SMR'; pattern = {'[0-9]+', '[A-HK-PR-WY][A-Y](51|(0|5)[2-9]|(1|6)[0-4])[A-Z]{3}', '([A-Z][a-z]+ )+([A-Z][a-z]+)'}; isvalid = [false true false]; assert(isequal(regex_match(userinput, pattern), isvalid))

s = 6 tf = 0 tf = 0 1 s = 0 tf = 0 1 0

7   Pass
user_solution = fileread('regex_match.m'); assert(isempty(strfind(user_solution,'java')));