Форум: "Начинающим";
Текущий архив: 2010.03.28;
Скачать: [xml.tar.bz2];
ВнизПолучить отдельные значения строки Найти похожие ветки
← →
ИгорУЛЬКА (2010-01-27 12:04) [0]Добрый день, Мастера. Допустим, есть строка "Потапов Семен Семеныч". Как проще получить по отдельности фамилию, имя и отчество. Пока на ум приходит только ручной разбор строки (Pos + Copy), но, чую, существует решение поэлегантней.
← →
12 © (2010-01-27 12:19) [1]можно глянуть на
ExtractStrings
"В стандарте - нет такого. Возможно, есть где-нибудь в сторонних библиотеках, только быстрее и проще сделать цикл с Pos..."
ЮЗ на подобный вопрос
← →
Медвежонок Пятачок © (2010-01-27 12:34) [2]Допустим, есть строка "Потапов Семен Семеныч".
а допустим есть строка "Остап Ибрагим Бей Оглы Бендер"
и надо получить :
"Остап"
"Ибрагим Бей Оглы"
"Бендер"
← →
Anatoly Podgoretsky © (2010-01-27 13:20) [3]Элегантнее с помощью PosEX
← →
Anatoly Podgoretsky © (2010-01-27 13:21) [4]Есть красивее, с помощью CommaText
← →
Nucer (2010-01-27 13:40) [5]Мой вариант:
procedure Explode(Separator: Char; S: string; Strings: TStringList; Limit: Integer = 0);
var
I, N: Integer;
Start: Integer;
Done: Boolean;
begin
Strings.BeginUpdate;
try
Strings.Clear;
if S = "" then Exit;
N := 0;
Start := 1;
Done := False;
repeat
Inc(N);
I := PosEx(Separator, S, Start);
if (I = 0) or (N = Limit) then
begin
I := Length(S) + 1;
Done := True;
end;
Strings.Add(Copy(S, Start, I - Start));
Start := I + 1;
until Done;
finally
Strings.EndUpdate;
end;
end;
Не всегда нужна обработка кавычек и апострофов, которую нельзя отключить в ExtractStrings.
← →
Anatoly Podgoretsky © (2010-01-27 14:18) [6]А наш проще Stings.CommaText := Text;
← →
Jeer © (2010-01-27 15:03) [7]
> Медвежонок Пятачок © (27.01.10 12:34) [2]
>
> Допустим, есть строка "Потапов Семен Семеныч".
>
> а допустим есть строка "Остап Ибрагим Бей Оглы Бендер"
> и надо получить :
> "Остап"
> "Ибрагим Бей Оглы"
> "Бендер"
Молодец !
В качестве оффтопа..
Где-то так в начале 80-х, когда еще был жив военный институт в бухте Казачья, что в Крыму, полетели мы туда - я и старший товарищ.
В процессе оформления документов на допуск, кто-то допустил ошибку и в итоге появились три человека:
- я
- Шамиль Кули
- Заде Али Оглы
Нас вдвоем ( физ.лица ) мурыжили три дня, пока разбирались, что заявлены всего два человека: я и Шамиль Кули-заде Али оглы
Это реальная история :)
← →
12 © (2010-01-27 17:52) [8]^))
← →
Smile (2010-01-27 20:04) [9]Неужели в начале 80-х не было "нужды" в паспортах?
Оформление на допуск происходило без соответствующих документов?
От себя: в достоверности, не сомневаюсь
:)
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2010.03.28;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.004 c