определяет, являются ли пустые строки частью разделяемой в итоге строки. Ниже приведены все эти формы метода Split ().
public string[] Split(params char[]
StringSplitOptions
StringSplitOptions
В двух первых формах метода Split () вызывающая строка разделяется на части и возвращается массив, содержащий подстроки, полученные из вызывающей строки. Символы, разделяющие эти подстроки, передаются в массиве
Для того чтобы стали понятнее последствия исключения пустых строк, попробуем заменить в предыдущем примере программы строку кода
string[] parts = str.Split (seps);
следующим фрагментом кода.
string[] parts = str.Split(seps, StringSplitOptions.RemoveEmptyEntries) ;
При выполнении данной программы получится следующий результат.
Результат разделения строки:
Один
на
суше
другой
на
море
Результат соединения строки:
Один | на | суше | другой | на | море
Как видите, пустая строка, появлявшаяся ранее из-за того, что после слова 'суше' следовали запятая и пробел, теперь исключена.
Разделение является очень важной процедурой обработки строк, поскольку с его помощью нередко получают отдельные
в приведенном ниже примере программы, где строки, содержащие такие бинарные математические операции, как 10 + 5, преобразуются в лексемы, а затем эти операции выполняются и выводится конечный результат.
// Преобразовать строки в лексемы.
using System;
class TokenizeDemo { static void Main() { string[] input = {
'100 + 19',
'100 / 3,3',
«_3 * 9..r
'100 - 87'
};
char[] seps = {' '};
for (int i=0; i < input.Length; i++) {
// разделить строку на части
