Ответ 1
Просто используйте опцию IgnoreCase
, см. .NET регулярные параметры выражения
Таким образом, ваше создание регулярных выражений может выглядеть так
Regex r = new Regex(@"^[ABCEGHJKLMNPRSTVXY]\d[A-Z] *\d[A-Z]\d$", RegexOptions.IgnoreCase);
Я также удалил все ваши {1}
потому что это лишнее. Каждый элемент по умолчанию согласован один раз, не нужно указывать это явно.
Другая возможность - использовать встроенные модификаторы, если вы не можете установить его на объект.
^(?i)[ABCEGHJKLMNPRSTVXY]\d[A-Z] *\d[A-Z]\d$