Dividindo uma string em c #

Eu estou tentando dividir uma seqüência de caracteres em c # da seguinte maneira:

A string de entrada está na forma

string str = "[message details in here][another message here]/n/n[anothermessage here]"

E eu estou tentando dividi-lo em uma matriz de seqüências de caracteres na forma

string[0] = "[message details in here]"
string[1] = "[another message here]"
string[2] = "[anothermessage here]"

Eu estava tentando fazer isso de uma forma como esta

string[] split =  Regex.Split(str, @"\[[^[]+\]");

Mas ele não funciona corretamente dessa maneira, estou apenas recebendo uma matriz vazia ou seqüências de caracteres

Qualquer ajuda seria apreciada!

questionAnswers(4)

yourAnswerToTheQuestion