У меня есть List< string>, он содержит набор строк отделённых пустой строкой, и я хочу его разбить на подмассивы основываясь на этих пустых строках. Пример:
List< string>:
USER: kitoung95@gmail.com
PASS: toung778899
HOST: SMTP://123456
USER: kitoung95@gmail.com
PASS: toung778899
HOST: SMTP://12345
USER: kitoung95@gmail.com
PASS: 15156
HOST: SMTP://123456l/pwd
Я хочу получить 3 массива/списка:
Массив 1:
USER: kitoung95@gmail.com
PASS: toung778899
HOST: SMTP://123456
Массив 2:
USER: kitoung95@gmail.com
PASS: toung778899
HOST: SMTP://12345
Массив 3:
USER: kitoung95@gmail.com
PASS: 15156
HOST: SMTP://123456l/pwd
Как это сделать???
В принципе, ничего сложного. Простая функция для разделения без регулярок
private IEnumerable<List<string>> SplitByEmptyString(IEnumerable<string> source){
var ret = new List<string>();
foreach(var line in source){
if (string.IsNullOrEmpty(line)){
if (ret.Count > 0) yield return ret;
ret = new List<string>();
}
else ret.Add(line);
}
if (ret.Count > 0) yield return ret;
}
Проверка
string str =
@"USER: kitoung95@gmail.com
PASS: toung778899
HOST: SMTP://123456
USER: kitoung95@gmail.com
PASS: toung778899
HOST: SMTP://12345
USER: kitoung95@gmail.com
PASS: 15156
HOST: SMTP://123456l/pwd";
var lines = str.Split(new[] {Environment.NewLine}, StringSplitOptions.None);
foreach(var group in SplitByEmptyString(lines))
Console.WriteLine(string.Join(", ", group));
Вывод
USER: kitoung95@gmail.com, PASS: toung778899, HOST: SMTP://123456
USER: kitoung95@gmail.com, PASS: toung778899, HOST: SMTP://12345
USER: kitoung95@gmail.com, PASS: 15156, HOST: SMTP://123456l/pwd
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
Программа простая, прототип бэк-энда для киоска парковкиНадо посчитать время выезда машины с парковки, но почему-то при попытке подсчитать...
Есть некое окно с разметкой Mainxaml, и есть некий файл с отдельно свёрстанным элементом(пусть будет Button
Всем привет, столкнулся с маленькой проблемойЕсть связанные таблицы, данные из них я получил, но мне нужно посчитать записи за 2018 год
Нужно вывести данные массива (дни недели)Выходные - выделить жирным шрифтом, причем текущий день - выделить курсивом