Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 06.10.2008, 00:33   #1
856100
Форумчанин
 
Регистрация: 12.08.2008
Сообщений: 135
По умолчанию Разделение 2-х слов в строке

Здраствуйте.
У меня такая проблема:
Есть строка из 2-х слов, которые разделены пробелом.
Надо сделать так, чтобы в одной переменной было первое слово, а во второй переменной второе слово.
Заранее Спасибо.
Будь проще, бери пример с одноклеточных
856100 вне форума Ответить с цитированием
Старый 06.10.2008, 00:36   #2
evg_m
Старожил
 
Регистрация: 20.04.2008
Сообщений: 5,526
По умолчанию

pos copy F1 можно еще добавить сюда trim
программа — запись алгоритма на языке понятном транслятору
evg_m вне форума Ответить с цитированием
Старый 06.10.2008, 00:45   #3
Arkuz
Форумчанин
 
Аватар для Arkuz
 
Регистрация: 22.09.2007
Сообщений: 540
По умолчанию

например:

Код:
dlina:= length(s);      // функция нахождения длины строки
for i:=1 to dlina do
begin
 if i:='  ' then s1:=copy(s,1,i-1);    // в s1 присваиваем часть слова до пробела 
 s2:=copy(s,i+1,dlina-i);                    //в s2 присваиваем часть слова от пробела до конца
end;

Последний раз редактировалось Arkuz; 06.10.2008 в 00:50.
Arkuz вне форума Ответить с цитированием
Старый 06.10.2008, 01:11   #4
856100
Форумчанин
 
Регистрация: 12.08.2008
Сообщений: 135
По умолчанию

Ошибка в if i:=' ' then s1:=copy(s,1,i-1);

Не совместимы integer и string

И если можно еще пример.
Будь проще, бери пример с одноклеточных

Последний раз редактировалось 856100; 06.10.2008 в 01:16.
856100 вне форума Ответить с цитированием
Старый 06.10.2008, 01:19   #5
eoln
Старожил
 
Аватар для eoln
 
Регистрация: 26.04.2008
Сообщений: 2,645
По умолчанию

Цитата:
Сообщение от Arkuz Посмотреть сообщение
например:

Код:
dlina:= length(s);      // функция нахождения длины строки
for i:=1 to dlina do
begin
 if i:='  ' then s1:=copy(s,1,i-1);    // в s1 присваиваем часть слова до пробела 
 s2:=copy(s,i+1,dlina-i);                    //в s2 присваиваем часть слова от пробела до конца
end;
Нет, не верно. Если уж цикл использовать, то так
Код:
dlina:= length(s);
for i:=1 to dlina do
if s[i]='  ' then 
begin 
 s1:=copy(s,1,i-1); 
 s2:=copy(s,i+1,dlina-i);
end;
Но уж лучше pos
Код:
d := pos(' ', s);
s1 := copy(s, 1, d);
s2 := copy(s, d+1, length(s) - d);
eoln вне форума Ответить с цитированием
Старый 06.10.2008, 06:16   #6
EdNovice
Пользователь
 
Регистрация: 13.04.2007
Сообщений: 65
По умолчанию

Функция ExtractStrings!
EdNovice вне форума Ответить с цитированием
Старый 06.10.2008, 16:40   #7
allmaestro
Пользователь
 
Регистрация: 12.09.2008
Сообщений: 11
По умолчанию

Какие параметры?
allmaestro вне форума Ответить с цитированием
Старый 06.10.2008, 16:44   #8
856100
Форумчанин
 
Регистрация: 12.08.2008
Сообщений: 135
По умолчанию СПАСИБО!!!!!!

Цитата:
Сообщение от eoln Посмотреть сообщение
Нет, не верно. Если уж цикл использовать, то так
Код:
dlina:= length(s);
for i:=1 to dlina do
if s[i]='  ' then 
begin 
 s1:=copy(s,1,i-1); 
 s2:=copy(s,i+1,dlina-i);
end;
Но уж лучше pos
Код:
d := pos(' ', s);
s1 := copy(s, 1, d);
s2 := copy(s, d+1, length(s) - d);
Спасибо огромное!!!
p.s.
Но лучше так:

d := pos(' ', s);
s1 := copy(s, 1, d-1);
s2 := copy(s, d+1, length(s) - d);[/
Будь проще, бери пример с одноклеточных
856100 вне форума Ответить с цитированием
Старый 06.10.2008, 18:19   #9
Arkuz
Форумчанин
 
Аватар для Arkuz
 
Регистрация: 22.09.2007
Сообщений: 540
По умолчанию

не проверял просто... ну извините, если кому жизнь сломал этим кодом )))))))
Arkuz вне форума Ответить с цитированием
Старый 06.10.2008, 20:41   #10
856100
Форумчанин
 
Регистрация: 12.08.2008
Сообщений: 135
По умолчанию

Я имел ввиду мелкую ошибку в коде.
Мне подходят 2 варианта.
Спасибо огромное!!!!!!!!!!!!!
Будь проще, бери пример с одноклеточных
856100 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Дана строка, состоящая из нескольких слов. Найти количество слов, которые содержат хотя бы одну букву "А" Mashaa Помощь студентам 13 09.12.2009 13:28
разделение формы на 4 части za4ot Общие вопросы Delphi 2 03.07.2008 12:12
Разделение файла Antik163RUS Помощь студентам 9 01.07.2008 12:23
Разделение строки xTANATOSx Общие вопросы Delphi 3 31.10.2007 21:27
Открытие файла,разделение. Kukkk Общие вопросы Delphi 3 20.09.2007 18:53