Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.07.11;
Скачать: CL | DM;

Вниз

Получить кусок строки   Найти похожие ветки 

 
Николай   (2004-06-29 20:29) [0]

Есть строка: "абвгд - жзиклмн". Нужно получить вторую ее часть - после " - ". Ведь обязана быть такая функция! Искал, искал - не нашел. Поможете?


 
AndrewVolkov   (2004-06-29 20:36) [1]

Result:=Copy(FullString, Pos("-", FullString), Length(FullString)-Pos("-", FullString);,
где FullString - твоя входная строка "абвгд - жзиклмн"


 
begin...end ©   (2004-06-29 20:38) [2]

var
 Str1, Str2: String;
 I: Integer;

begin

 Str1 := "абвгд - жзиклмн";
 I := Pos("-", Str1);
 Str2 := Copy(Str1, I, Length(Str1) - I);

end.


 
begin...end ©   (2004-06-29 20:39) [3]


> [1] AndrewVolkov   (29.06.04 20:36)

:)


 
AndrewVolkov   (2004-06-29 20:44) [4]

>[2] А у меня в одну строчку :))


 
Николай   (2004-06-29 21:08) [5]

Спасибо!

Или благодарю, как кому больше нравится :)


 
Ihor Osov'yak ©   (2004-06-29 21:08) [6]

2 [4] AndrewVolkov   (29.06.04 20:44)

А у [2] - оптимальнее, функция Pos вызывается только один раз.
Но у вас обоих есть общая ошибка - не делается анализ, если Pos возвратит нуль. Конечно, в этом примере такое невозможно, но если входное значение будет меняться - почему бы и нет. Тогда в [2] эту проблему решаем относительно просто - анализ I на превышение нуля:

if  (I > 0)
then
 Str2 := Copy(Str1, I, Length(Str1) - I)
else
 Str2 := "";


 
Anatoly Podgoretsky ©   (2004-06-29 21:55) [7]

Ihor Osov"yak ©   (29.06.04 21:08) [6]
В зависимости от того, что надо делать если строка не содержит этого знака и возратить для этого случая всю строку, то тогда это не будет являться ошибкой, а вот если надо возратить пустую строку, то конечно это ошибка.
Но это не единственная проблема, возвратить по условию надо строку после "-", а не вместе с минусом.


 
AndrewVolkov   (2004-06-29 22:18) [8]

то [6], я саму идею дал. А уж как ей воспользоваться (проверить на 0 и т.д.) - это уж личное дело того кто созидает. :)



Страницы: 1 вся ветка

Текущий архив: 2004.07.11;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.039 c
1-1088247918
Lexa
2004-06-26 15:05
2004.07.11
Файл ресурсов


4-1085833368
Grinder
2004-05-29 16:22
2004.07.11
Как запретить выключение Windows НЕ используя CloseQuery?


14-1088125196
Soft
2004-06-25 04:59
2004.07.11
Как вам такие ужастики? Стивен Кинг отдыхает...


4-1085739046
stany
2004-05-28 14:10
2004.07.11
Сервис и GetUserName


14-1087564327
YurikGL
2004-06-18 17:12
2004.07.11
Я тоже диплом защитил!!!!