using System.Diagnostics;
public static void Main()
var text = "asdasdasd\nasdasdasdasdasd\nasdasdasdassd \r\naasdasdsadsadasd\n\n \n\n\nasdasdaasdasda\nasdasdasd\rasdasdsd\r\nadasdasdas";
var sw = new Stopwatch();
var splits1 = new[] { "\n", "\r\n", "\n\n", "\r" };
string[] arguments1 = new string[0];
for (var i = 0; i < 100000; i++)
arguments1 = text.Split(splits1, StringSplitOptions.RemoveEmptyEntries);
if (arguments1.Length != 8)
Console.WriteLine("ERROR: length mismatch");
Console.WriteLine("Milliseconds using split strings: "+ sw.ElapsedMilliseconds);
var splits2 = new[] { '\n', '\r' };
string[] arguments2 = new string[0];
for (var i = 0; i < 100000; i++)
arguments2 = text.Split(splits2, StringSplitOptions.RemoveEmptyEntries).Where(s => !string.IsNullOrWhiteSpace(s)).ToArray();
if (arguments2.Length != 8)
Console.WriteLine("ERROR: length mismatch");
Console.WriteLine("Milliseconds using split chars + Linq filter: " + sw.ElapsedMilliseconds);