Допустим, у меня есть строка str = "слово1^слово2^слово3^...^словоN".
Как мне получить "слово1"?
Можно использовать str.Split('^')[0], но, мне кажется, для больших N это не совсем рационально, другие "слова" мне не нужны.
Может тогда так?
str = "слово1^слово2...";
String word = str.Substring(0, str.IndexOf('^'));
Смотрим, где первый раз встречается разделитель, выбираем подстроку...
У метода string.Split есть перегрузка, принимающая максимальное количество подстрок для возврата:
var str = "слово1^слово2^слово3^...^словоN";
var words = str.Split(new char[] { '^' }, 1);
Console.WriteLine(words.Length); // 1
Это эффективно именно в случае больших N.
Уточню.
Если нужно получить одно первое значение, я бы взял способ из другого ответа с Substring + IndexOf.
Если нужно получить несколько первых значений, я бы взял способ Split с параметром count.
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости