Regular expressions are much easier to understand if you use the following syntax and comment each component of the expression by using a number sign (#). To enable comments, you must also specify RegexOptions.IgnorePatternWhitespace, which means that non-escaped white space is ignored. Regex regex = new Regex(@" ^ # anchor at the start (?=.*\d) # must contain at least one numeric character (?=.*[a-z]) # must contain one lowercase character (?=.*[A-Z]) # must contain one uppercase character...