Какво прави ".Split"?
Здравейте колеги.
Не мога да разбера как точно работи ".Split" и къде трябва да се използва. Ако някой може да ми обясни подробно и с примери ще му бъда много благодарен.
Здравейте колеги.
Не мога да разбера как точно работи ".Split" и къде трябва да се използва. Ако някой може да ми обясни подробно и с примери ще му бъда много благодарен.
String str = "my name is Pesho";
String [] array = str.split();
Ще отдели думите в str по интервал и в масива array ще можеш да си ползваш всяка дума като стринг . Може да разделяш и по други чарове(char) и в комбинация.
е това .сплит попринцип най-често в софтуни се полазва да се сплитне(раздели) стринг по това кето си задал.
примерно искат да попълниш масив от конзолата на 1 ред
12 213 32121 32 12
Примерно това си въвел и си го запазил в стринг и после със стринг сплит по white spaces можеш да вкараш всяко число в масив. Вместо по всяко число на отделен ред да го пишеш
Не е зле да се понаучиш да ползваш и гугъл - доста често ще ти се налага да ползваш гугъл като девелопър. Още първия резултат на търсене ".split c#" дава следния резултат:
https://msdn.microsoft.com/en-us/library/system.string.split(v=vs.110).aspx
Ето и примери:
var input = (1) (2) (3) {4} 5
Добре е да се спомене и този вариант - ако искаш да .Split-неш този стринг по няколко char-a, това може да се направи така:
var result = input.Split(new[] { '(', ')', '{', '}', ' '});
По този начин, обаче, се образуват празни стрингове, които също се добавят към резултатния масив, затова обикновено се добавя флага StringSplitOptions.RemoveEmptyEntries. Split-ването изглежда така:
var result = input.Split(new[] { '(', ')', '{', '}', ' '}, StringSplitOptions.RemoveEmptyEntries);
result ще е масив от стрингове и ще съдържа само 1, 2, 3, 4, 5
А как може да се дефинират следните два символа като част от char array-я, който ползваме за split: " \ " и " ' "? Дава ми грешка защото са специални символи в C#. Това е кода:
List<string> original = Console.ReadLine().Split(new char[] {'\','''},StringSplitOptions.RemoveEmptyEntries).ToList();
Благодаря предварително.
Като се ескейпнат с наклонена черта пред всеки от тях:
List<string> original = Console.ReadLine().Split(new char[] { '\\','\'' }, StringSplitOptions.RemoveEmptyEntries).ToList();
Благодаря за бързия отговор!
Returns a string array that contains the substrings in this instance that are delimited by elements of a specified string or Unicode character array
https://msdn.microsoft.com/en-us/library/system.string.split(v=vs.110).aspx
.Split() - сплитва или разделя даден стринг според зададените аргументи в (). Често се използва сплитване по ' ' (space). Ето и един простичък пример:
string s = "there is a cat"; string[] words = s.Split(' '); foreach (string word in words) { Console.WriteLine(word); }
Output:
there
is
a
cat
Дано примера ти е бил полезен и разясняващ.
Използва се да раздели числата, думите и т.н., зависи какви са ти входните данни със - " space ", " . " , " , " , " - " и всички останали символи. Използва се при array, list, char, string и т.н. Пример:
int[ ] array = Console.ReadLine().Split(' ').Select(int.Parse).ToArray();
Като му го напишете 7 пъти няма да разбере по-бързо.
Или не четат всичките коментари, или им трябват бонус точки за форумна активност.
Прочети тук http://www.dotnetperls.com/split, написано е на много разбран езим има и много примери.
Буквално от превод на английски към българси split е цепя, резцепвам.
По зададени параметри Split(параметри), ти резцепва един стринг (текст) на парчета, по-малки парчета от този текст.
Важно е да знаеш, че Split винаги връща, масив.
string text = "Pleven-Varna-Sofia";
string[] towns = text.Split('-');
string town1 = towns[0]; // Pleven
string town2 = towns[1]; // Varna
string town3 = towns[2]; // Sofia
Успех.
Казано просто разбива един стринг на подстрингове по даден раделител.