Вверх ↑
Ответов: 4630
Рейтинг: 749
#1: 2015-04-01 13:02:21 ЛС | профиль | цитата
Tad писал(а):
Я предложил реализовать компонентом SetLength просто процедуру "обрезания" строки

Так, давайте выясним задачи, а то тут что-то всё в одну кучу свалили
1) Та, для которой создана эта тема - "обрезание строки". То-есть, получить первые N символов указанной строки. Эту задачу выполняет у нас Copy. Но поскольку часто требуется получить именно первую часть, то я предлагаю для упрощения туда же добавить два метода doCopyFirst, doCopyLast и закончить тему SetLength. Необходимости "увеличения" строки тут нет.
2) Дополнение строки до указанной длины слева, справа, с обеих сторон указанным символом (строкой).
Для этого нужен отдельный компонент. Называем его StrPad, методы doPadLeft, doPadRight, doPadBoth, точки/свойства Length, FillChar(FillPattern). Можно ещё добавить свойство что делать, если строка превышает Length: обрезать, выдать неизменённую.

Tad писал(а):
А вдруг кто-то захочет
Это не относится к оглашенным выше задачам. Не помню, у нас есть что-то типа StrReverse? Тогда бы и это решалось.
карма: 26

0