Dorochenko_iv писав:Скажите пожалуйста, можно ли разложить название документации взятое из поля "Вид технической документации in4" (закладка техническая документация) на составные? Например в поле стоит "проект із землеустрою щодо відведення земельної ділянки в оренду", а нужно отдельно взять "проект із землеустрою" и "щодо відведення земельної ділянки в оренду", более того "проект із землеустрою" нужно сделать заглавными.
Конечно можно! НО! Нужно точно знать либо количество букв, по которым будет разделение, либо известные какие-то буквы. Покажу на Вашем примере два способа:
Допустим имеем текстовую переменную Start:
Код: Виділити все
Start := 'проект із землеустрою щодо відведення земельної ділянки в оренду';
Разделим на переменные Part1 и Part2:
1. Когда известно номер буквы до которой надо разделить на составные.
Код: Виділити все
Part1 := Copy(Start, 1, 21);
Part2 := Copy(Start, 23, Length(Start)-22);
Объясню. Чтобы из текстовой переменной взять только часть, нужно воспользоваться функцией Copy. Первый параметр этой функции - это исходная текстовая переменная (в нашем случае это Start), второй параметр - из какого символа начинать вырезку (если сначала, то 1 - для переменной Part1, а для Part2 - 23, потому что слово "щодо" начинается с 23-ей буквы), и третий параметр - сколько символов вырезать (для Part1 - 21, пробел является 22-ым символом, но он нам не нужен, для Part2 - все до конца, для этого служит Length(Start)-22, тоесть от всего количества символов отнять 22).
2. Когда известно по каким буквам или словам надо разделить на составные.
Возьмём в качестве известного слова - "щодо"
Код: Виділити все
Part1 := Copy(Start, 1, Pos('щодо', Start)-2);
Part2 := Copy(Start, Pos('щодо', Start), Length(Start)-Pos('щодо', Start)+1);
В данном варианте мы воспользовались той же функцией, но добавили ещё и функцию Pos - она ищет указанное слово и возвращает номер буквы, где его нашла. Первый параметр этой функции - слово или буква, которую надо найти, второй - текст или текстовая переменная, где ищется это слово.
Чтобы сделать первую букву заглавной, надо воспользоваться простенькой функцией UpperFirst:
Код: Виділити все
Part1 := UpperFirst(Part1);