Я получаю значение "Плохая компиляция константы" в этом выражении.
Regex objCheckNumber = new Regex("^(\d){4}$");
Я просто хочу установить это, чтобы проверить другую строку, чтобы увидеть, введено ли значение 4 цифры.
Ответ 1
С# пытается интерпретировать \d как escape-последовательность, а \d не является допустимой escape-последовательностью (но, например, \n и \t). Вы можете удвоить обратную косую черту, чтобы избежать ее ("^(\\d){4}$"), или вы можете префикс строки константы с помощью знака at: @"^(\d){4}$".
Ответ 2
В С# используется символ escape. Вам нужно удвоить значение \ до \\.
В качестве альтернативы поместите символ @перед двойной кавычкой: