Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Два слова в одном тексте [D7, XP]


Gex88 ©   (2006-11-07 07:25:00) 

Добрый день ! Помогите с задачей. Есть переменная Str которая ровняется " Владимир Владимирович" Как можно разделить имя от отчества ? Заранее благодарю.


Palladin   (2006-11-07 08:01:00) [1]


> Loginov Dmitry ©   (07.11.06 07:50) [5]

Весьма сомнительно, что используя str вне области видимости переменной str, чел сможет понять в чем ошибка компиляции. Это именно совет для начинающих.


Loginov Dmitry   (2006-11-07 07:50:00) [2]

Palladin ©   (07.11.06 7:40) [1]
PS не давай идентификаторам имя Str, бо есть такая функция


С весьма сомнительной полезностью, если есть SysUtils.

Gex88   (07.11.06 7:25)


with TStringList.Create do
try
 Text := StringReplace(Str, ' ', sLineBreak, [rfReplaceAll]);
 strFirstName := Strings[0];
 strLastName := Strings[1];
finally
 Free;
end;


Gex88   (2006-11-07 07:46:00) [3]

Всем большое спасибо !!!


Elen   (2006-11-07 07:44:00) [4]


> Gex88

Ну и еще можно

ListBox1.Items.Delimiter:=' ';
ListBox1.Items.DelimitedText:=<Твоя_переменка>;

Тогда ты получиш список вне зависимости от того вввел ли полностью ФИО или только ФИ 8)


Elen   (2006-11-07 07:41:00) [5]


> Gex88

Например паскалевским способом :
var i:integer;q,w,s:string;
begin
s:='Владимир Владимирович';
i:=1; while s[i]<>' ' do inc(i);
q:='Имя - '+copy(s,1,i);
w:='Фамилия - '+copy(s,i,length(s)-i+1);
caption:=q+' '+w;
end;


Palladin   (2006-11-07 07:40:00) [6]

Var
n:Integer;
s:String;
strFirstName,strMidName:String;
Begin
s:=Trim(str);
n:=Pos(' ',Trim(s));
strFirstName:=Copy(s,1,n-1);
strLastName:=Copy(s,n+1,Length(s));
End;

PS не давай идентификаторам имя Str, бо есть такая функция


Наверх

Титульная страница Поиск, карта сайта Написать письмо