Если не считать '' 'то есть экранированных символов регулярного выражения, я не могу думать ни о чем из головы.
Поскольку использование @ копирует строковый литерал дословно, попробуйте -
1.Найдите все '[' / '*' / '+' / 'все другие символы regex' и убедитесь, что предыдущий символ представляет собой '\'.
2. Другой способ - написать грамматику / регулярное выражение, чтобы проверить это. Я думаю, вам понадобится грамматика. В любом случае (1) выше проще.
Некоторые строковые методы могут помочь проверить вышеизложенное (например, IndexOf ...).
В любом случае регулярное выражение - это просто строка, если и до тех пор, пока оно не будет скомпилировано и использовано. Я до сих пор не понимаю, почему ты хочешь это сделать. Если вы хотите, чтобы что-то было правильно сформированным регулярным выражением, это проще. (Я не знаю, как это можно сделать на C #, см. Ответ Свиша.)
Примечание
1. Регулярное выражение всегда является правилом, потому что регулярное выражение "XYZ" является правилом, которое всегда соответствует только одному "XYZ" и не соответствует ничему другому.
Надеюсь, это поможет.