All files regexpatterns.js

100% Statements 5/5
100% Branches 0/0
100% Functions 0/0
100% Lines 5/5

Press n or j to go to the next uncovered block, b, p or k for the previous block.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80      1x                                                                                                                                 1x     1x     1x       1x  
// Collection of regex patterns available for importing into any module
 
// DVLA number plate regex with and without a space
export const numberPlateRegexArray = [
  /^[A-Z]{2}[0-9]{2}[A-Z]{3}$/,
  /^[A-Z]{2}[0-9]{2} [A-Z]{3}$/,
  /^[A-Z][0-9]$/,
  /^[1-9][A-Z]$/,
  /^[A-Z][0-9]{2}$/,
  /^[A-Z]{2}[0-9]$/,
  /^[1-9][A-Z]{2}$/,
  /^[1-9][0-9][A-Z]$/,
  /^[A-Z][0-9]{3}$/,
  /^[A-Z]{2}[0-9]{2}$/,
  /^[A-Z]{3}[0-9]$/,
  /^[1-9][A-Z]{3}$/,
  /^[1-9][0-9][A-Z]{2}$/,
  /^[1-9][0-9]{2}[A-Z]$/,
  /^[A-Z][0-9]{4}$/,
  /^[A-Z]{2}[0-9]{3}$/,
  /^[A-Z]{3}[0-9]{2}$/,
  /^[A-Z]{3}[0-9][A-Z]$/,
  /^[1-9][0-9][A-Z]{3}$/,
  /^[1-9][0-9]{2}[A-Z]{2}$/,
  /^[A-Z][0-9][A-Z]{3}$/,
  /^[1-9][0-9]{3}[A-Z]$/,
  /^[A-Z]{2}[0-9]{4}$/,
  /^[A-Z]{3}[0-9]{2}[A-Z]$/,
  /^[A-Z]{3}[0-9]{3}$/,
  /^[1-9][0-9]{3}[A-Z]{2}$/,
  /^[A-Z][0-9]{2}[A-Z]{3}$/,
  /^[1-9][0-9]{2}[A-Z]{3}$/,
  /^[A-Z]{3}[0-9]{4}$/,
  /^[A-Z][0-9]{3}[A-Z]{3}$/,
  /^[A-Z]{3}[0-9]{3}[A-Z]$/,
  /^[A-Z] [0-9]$/,
  /^[1-9] [A-Z]$/,
  /^[A-Z] [0-9]{2}$/,
  /^[A-Z]{2} [0-9]$/,
  /^[1-9] [A-Z]{2}$/,
  /^[1-9][0-9] [A-Z]$/,
  /^[A-Z] [0-9]{3}$/,
  /^[A-Z]{2} [0-9]{2}$/,
  /^[A-Z]{3} [0-9]$/,
  /^[1-9] [A-Z]{3}$/,
  /^[1-9][0-9] [A-Z]{2}$/,
  /^[1-9][0-9]{2} [A-Z]$/,
  /^[A-Z] [0-9]{4}$/,
  /^[A-Z]{2} [0-9]{3}$/,
  /^[A-Z]{3} [0-9]{2}$/,
  /^[A-Z]{3} [0-9][A-Z]$/,
  /^[1-9][0-9] [A-Z]{3}$/,
  /^[1-9][0-9]{2} [A-Z]{2}$/,
  /^[A-Z][0-9] [A-Z]{3}$/,
  /^[1-9][0-9]{3} [A-Z]$/,
  /^[A-Z]{2} [0-9]{4}$/,
  /^[A-Z]{3} [0-9]{2}[A-Z]$/,
  /^[A-Z]{3} [0-9]{3}$/,
  /^[1-9][0-9]{3} [A-Z]{2}$/,
  /^[A-Z][0-9]{2} [A-Z]{3}$/,
  /^[1-9][0-9]{2} [A-Z]{3}$/,
  /^[A-Z]{3} [0-9]{4}$/,
  /^[A-Z][0-9]{3} [A-Z]{3}$/,
  /^[A-Z]{3} [0-9]{3}[A-Z]$/,
];
 
// Name regex including international characters and certain special characters
export const nameRegexPattern =
  /^([a-zA-Z\xC0-\uFFFF]+([ \-']{0,1}[a-zA-Z\xC0-\uFFFF]+)*[.]{0,1}){1,2}$/;
 
// Email regex pattern
export const emailRegexPattern = /^[^\s@]+@[^\s@]+\.[^\s@]+$/;
 
// UK phone regex including starting with 0 or +44 and for 9 or 10 subsequent digits
export const phoneUKRegexPattern = /^(?:0|\+?44)(?:\d\s?){9,10}$/;
 
// UK postcode regex pattern
export const postcodeUKRegexPattern =
  /^(([Gg][Ii][Rr] 0[Aa]{2})|((([A-Za-z][0-9]{1,2})|(([A-Za-z][A-Ha-hJ-Yj-y][0-9]{1,2})|(([A-Za-z][0-9][A-Za-z])|([A-Za-z][A-Ha-hJ-Yj-y][0-9]?[A-Za-z])))) ?[0-9][A-Za-z]{2}))$/;