Я создал следующий шаблон регулярных выражений, пытаясь сопоставить строку длиной 6 символов, заканчивающуюся либо "PRI", либо "SEC", если только строка = "SIGSEC". Например, я хочу сопоставить ABCPRI, XYZPRI, ABCSEC и XYZSEC, но не SIGSEC.
(\w{3}PRI$|[^SIG].*SEC$)
Это очень близко и что-то вроде работ (если я передаю "SINSEC", он возвращает частичное совпадение с "NSEC"), но у меня нет хорошего представления об этом в его текущей форме. Кроме того, у меня может возникнуть необходимость добавить больше исключений, кроме «SIG», позже и понять, что это, вероятно, не слишком хорошо масштабируется. Есть идеи?
Кстати, я использую System.Text.RegularExpressions.Regex.Match () в C #
Спасибо,
Рич