Попробуйте заглянуть в будущее:
(?<Name>\b(?!(?:and|x?or)\b)[A-Za-z0-9]+)
Предполагается, что вы пытаетесь сопоставить один литерал, например "IF ( this AND this )". Регулярное выражение проверяет перед приемом букв, если все, что он видит, это «и», «или» или «xor», то это не удается.
Также убедитесь, что у вас установлен правильный RegexOptions
- вы, вероятно, хотите включить IgnoreCase
, и если у вас нет IgnorePatternWhitespace
, пробел в исходном шаблоне может не соответствовать, в if(var1
нет пробела. Например.