Estou tendo problemas para dividir uma string em c # com um delimitador de "] [".
Por exemplo, a cadeia "abc] [rfd] [5] [,] [."
Deve produzir uma matriz contendo;
ABC
RFD
5
,
.
Mas não consigo fazê-lo funcionar, mesmo se eu tentar o RegEx, não consigo obter uma divisão no delimitador.
Edição: essencialmente, eu queria resolver esse problema sem a necessidade de uma expressão regular. A solução que eu aceito é;
string Delimiter = "][";
var Result[] = StringToSplit.Split(new[] { Delimiter }, StringSplitOptions.None);
Fico feliz em poder resolver esta questão dividida.
Respostas:
Para mostrar ambos
string.Split
eRegex
uso:fonte
StringSplitOptions.None
excessoinput.Split(new string[] { "][" })
?String.Split("[]".ToCharArray())
isso dividiria por [e] separadamente. Por exemplo: Olá [Mundo] É [Eu! seria: Olá, mundo, sou eu!fonte
Outra opção:
Substitua o delimitador de sequência por um único caractere e divida nesse caractere.
fonte
string input = "abc][rf-d][5"
. O "-" em "rf-d" será capturado como um delimitador. Veja a resposta aceita acima.Dim Levels As New List(Of String)(newSelectedTask.Replace(LevelDelimter, Chr(13)).Split(Chr(13)))
fonte