Я не знаю, совпадают ли регулярные выражения C # с perl, но если это так, вы, вероятно, захотите экранировать символы [
и ]
. Кроме того, там есть дополнительные символы. Попробуйте это:
string pattern = "^servers\[i\]=\[\"(?<name>.*)\", (.*), (?<location>.*)\];$";
Отредактировано, чтобы добавить : Задавшись вопросом, почему мой ответ был опущен, а затем, глядя на ответ Вэла, я поняла, что «лишние символы» были там по причине. Это то, что perl называет «именованными буферами захвата», которые я никогда не использовал, но оригинальный фрагмент кода делает. Я обновил свой ответ, чтобы включить их.