Я написал регулярное выражение, которое должно проверять строку, используя следующие правила:
Таким образом, строка должна выглядеть следующим образом, если она допустима:
CCCNNNNNN или CCCCNNNNNNN
C - любой символ. и N - число.
Мое выражение написано: @ "^ [0-9A-Za-z] {3} [0-9A-Za-z -] \ d {0,21} $";
My Код сопоставления регулярных выражений выглядит следующим образом:
var cc1 = "FOOBAR"; // should fail.
var cc2 = "AAAA1111111111"; // should succeed
var regex = @"^[0-9A-Za-z]{3}[0-9A-Za-z-]\d{0,21}$";
Match match = Regex.Match( cc1, regex, RegexOptions.IgnoreCase );
if ( cc1 != string.Empty && match.Success )
{
//"The Number must start with 4 letters and contain no numbers.",
Error = SeverityType.Error
}
Я надеюсь, что кто-то сможет взглянуть на мое выражение и высказать свое мнение об улучшениях, чтобы получить правильное сопоставление.
Кроме того, правильно ли я использую .Match ()
? Если Match.Success
равно true
, то означает ли это, что строка действительна?