Eu apenas pensei em adicionar meus dois bits, porque as outras soluções nessa questão não se enquadram na classificação de código reutilizável e não são convenientes.
O seguinte bloco de código estende o string
objeto para que ele esteja disponível como um método natural ao trabalhar com seqüências de caracteres.
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Collections;
using System.Collections.ObjectModel;
namespace System
{
public static class StringExtensions
{
public static string[] Split(this string s, string delimiter, StringSplitOptions options = StringSplitOptions.None)
{
return s.Split(new string[] { delimiter }, options);
}
}
}
Agora você pode usar a .Split()
função de qualquer sequência da seguinte maneira:
string[] result;
// Pass a string, and the delimiter
result = string.Split("My simple string", " ");
// Split an existing string by delimiter only
string foo = "my - string - i - want - split";
result = foo.Split("-");
// You can even pass the split options parameter. When omitted it is
// set to StringSplitOptions.None
result = foo.Split("-", StringSplitOptions.RemoveEmptyEntries);
Para dividir um caractere de nova linha, basta passar "\n"
ou "\r\n"
como o parâmetro delimitador.
Comentário: Seria bom se a Microsoft implementasse essa sobrecarga.