Демонстрация работы метода Split типа String
Материал из Вики ИТ мехмата ЮФУ
Версия от 23:18, 12 февраля 2013; Juliet (обсуждение | вклад)
// Демонстрация работы метода Split типа String.
// Воспользуйтесь подсказкой по точке для строковой переменной,
// чтобы увидеть типы параметров и другие версии метода Split.
uses Arrays; // для использования процедуры WriteArray
const
DefaultDelim = '*'; // разделитель, используемый при печати
/// Выводит на консоль массив строк words, разделенных строкой delim.
/// При выводе массив также ограничивается строкой delim слева и справа.
procedure PrintBoundedWords(words: array of string;
delim: string := DefaultDelim);
begin
write(delim);
WriteArray(words, delim);
writeln(delim);
end;
begin
var str := 'What is it? Nothing about politics, I hope!They don''t interest me.';
WritelnFormat('{0}{1}{0}{2}', DefaultDelim, str, NewLine);
// Split без параметров возвращает массив подстрок строки str,
// разделенных пробелом.
var subs1 := str.Split();
PrintBoundedWords(subs1);
// Данная версия Split возвращает массив подстрок строки str,
// разделенных символами, переданными в качестве параметров.
var subs2 := str.Split(' ', '.', ',', '?', '!');
PrintBoundedWords(subs2);
// Данная версия Split возвращает массив подстрок строки str,
// разделенных символами массива separators, при этом удаляя
// из результирующего массива пустые строки (второй параметр
// равен StringSplitOptions.RemoveEmptyEntries).
var separators: array of char := (' ', '.', ',', '?', '!');
var subs3 := str.Split(separators, System.StringSplitOptions.RemoveEmptyEntries);
PrintBoundedWords(subs3);
end.