![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Как найти ПОСЛЕДНИЙ пробел в строке?
Гарри Шалфеевичь © (2005-09-29 17:19:00)...или последний пробел в строке ДО опеделенной позиции?
Допустим есть строка :
"Разрешается использование тегов форматирования текста: а для выделения текста программ"
Как мне найти пробел между словами "текста" и "программ" не знаная об эих словах?
То есть...
Есть ричедит в который грузится тестовой файл. В результате в ричедите оказываетя порядка 100 - 150 строк разной длины. КАК найти пробелы в строках ДО 120 символа? Именно последний пробел перед 120 символом.
Вобщем мне надо сделать прогу которая будет выравнивать текст, а точнее строки в тексте по попределенной длине. Нельзя же обрезать полслова и оставшуюся часть слова перенести на следуюшую строку, вот поэтому мне и надо найти пробел перед словом которое должно оказаться последним в строке, чтобы с пробела и перенести оставшуюся часть строки на новую строку.
Вобщем я фигово излогаю, но как внятнее я не знаю.
Помогите плийз если не трудно...
umbra (2005-09-29 19:44:00) [1]
> StrUtils
Все, пора домой! SysUtils
umbra (2005-09-29 19:42:00) [2]
> Fay ©
Как оказалось, и у меня она есть тоже. Если присмотреться к модулю StrUtils, то можно рассмотреть
Fay (2005-09-29 19:40:00) [3]2 begin...end © (29.09.05 19:38) [12]
Сторона обвинения пока не располагает убедительными доказательствами 8)
begin...end (2005-09-29 19:38:00) [4]> Fay © (29.09.05 19:35) [11]
> Гуано редкое.
Надеюсь, я в этом не виноват?
Fay (2005-09-29 19:35:00) [5]2 begin...end © (29.09.05 19:24) [10]
>> А у меня в Delphi AnsiStrRScan есть.
У меня, как выяснилось, тоже. (D7)
Посмотрел. Гуано редкое.
begin...end (2005-09-29 19:24:00) [6]> umbra © (29.09.05 18:59) [7]
А у меня в Delphi AnsiStrRScan есть.
umbra (2005-09-29 19:21:00) [7]2 Fay © (29.09.05 19:15) [8]
Ну надо ж уважать труд создателей делфи! они трудились, функции писали:))
Fay (2005-09-29 19:15:00) [8]2 umbra © (29.09.05 18:59) [7]
Аforесть? 8)
umbra (2005-09-29 18:59:00) [9]
> Fay © (29.09.05 18:51) [5]
> Зачем такие сложности?!
Надо ж эти функции как нибудь использовать! Да и наглядней получается.
> begin...end
А у меня в делфи AnsiStrRScan нет
Fay (2005-09-29 18:51:00) [10]2 umbra © (29.09.05 17:31) [1]
Зачем такие сложности?!
begin...end (2005-09-29 18:51:00) [11]> Как найти ПОСЛЕДНИЙ пробел в строке?
См. функции AnsiStrRScan или LastDelimiter из модуля SysUtils.
Гарри Шалфеевичь (2005-09-29 18:44:00) [12]Спасибо всем большое!!!!
И в праду форум МАСТЕРОВ )))
han_malign (2005-09-29 18:28:00) [13]
Result:=0;
len:= Length(str);
if(len > limit)then begin
Result:=limit;
while((Result > 0) and (str[Result] <> ' ')) dec(Result);
end;
Smithson (2005-09-29 17:41:00) [14][code]
for I := Length(S) downto 1 do
if S[I] - ' ' then // Нашли!
[/code]
umbra (2005-09-29 17:31:00) [15]
function FindLastSpace(src: string): integer;
begin
src := LeftStr(src, 120);
src := ReverseStr(src);
Result := Pos(' ', src);
end;