Проблема в том, что вы разделяете на массив символов { '\r', '\n' }
, что означает, что любой символ рассматривается как разделитель, а не как целая последовательность "\r\n"
, т. Е. В "\r\n"
между ними есть пустая строка.
Чтобы разбить на всю последовательность, используйте только строковый массив из одного элемента
IEnumerable<string> items = searchterms.Trim().Split(new string[] { Environment.NewLine, }, StringSplitOptions.None);
. Это не приведет к созданию пустого элемента, если в строке нет последовательных "\r\n"
.Если вы также хотите удалить пустые элементы, в таком случае вы можете использовать опцию RemoveEmptyEntries
разбиение строки.
IEnumerable<string> items = searchterms.Trim().Split(new string[] { Environment.NewLine, }, StringSplitOptions.RemoveEmptyEntries);