Форум программистов, компьютерный форум, киберфорум
Delphi для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/3: Рейтинг темы: голосов - 3, средняя оценка - 4.67
0 / 0 / 0
Регистрация: 08.02.2014
Сообщений: 15
1

Как изменить неизвестное слово в строке

08.02.2014, 12:42. Показов 546. Ответов 5
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Допустим нам известно что слово состоит из 5 букв и символов и стоит в начале строки.
На второй строке нам известно что есть слово delphi, но после него опять неизвестное слово
Вот пример:
xxxxx
delphi-xxxxx
Нам нужно записать первое слово в первой строке в переменную Slowo, а второе слово в переменную Simvol.
Как это сделать?
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
08.02.2014, 12:42
Ответы с готовыми решениями:

Как заменить в тексте неизвестное слово между известными словами
В вордовском файле встречается фраза: "Длина пути составляет 100 км." Причем километров может быть...

Данная строка не распознана как действительное значение DateTime. Обнаружено неизвестное слово,
Как исправить эту ошибку ? An unhandled exception of type 'System.FormatException' occurred in...

Заменить каждое слово в строке на обратное ему слово, при этом сохраняя последовательность слов в строке
Доброго времени суток ! Есть задача Заменить каждое слово в строке на обратное ему слово, при этом...

Неизвестное в строке
Вообщем есть строка 'for($i = 0;$i==count($mas);$i++)' и 'for((.*)=(.*);(.*)(.*);(.*))' , первую...

5
561 / 484 / 168
Регистрация: 14.02.2012
Сообщений: 1,561
08.02.2014, 12:51 2
Если знаете длину слова и индекс первого символа, то можно использовать Copy.
Функция Copy ( S; Index, Count: Integer ): string;

Описание

Функция возвращает подстроку или сегмент массива размером Count, начиная с элемента S[Index].
Параметр S - выражение типа string или динамический массив. Если Index>Length(S), то функция возвращает пустую строку или пустой массив.
Если значение параметра Count больше, чем может быть возвращено функцией, то возвращаются символы или элементы, начиная с S[Index] и до конца S.

Пример

Delphi
1
2
3
4
5
6
var
   S: string;
begin
   S:= 'Победа';
   S:= Copy( S, 3, 4);     // S := 'беда'
end;
0
0 / 0 / 0
Регистрация: 08.02.2014
Сообщений: 15
08.02.2014, 13:43  [ТС] 3
Цитата Сообщение от ВАСИЛЕВС Посмотреть сообщение
Если знаете длину слова и индекс первого символа, то можно использовать Copy.
А если длина его неизвестна, но известно индекс первого и последнего символа, то как быть?
0
561 / 484 / 168
Регистрация: 14.02.2012
Сообщений: 1,561
08.02.2014, 13:56 4
Индекс последнего - индекс первого и будет длиной, не? Можно сделать свою реализацию, копируя символы от первого до последнего символа.
0
fatal error
136 / 128 / 29
Регистрация: 10.04.2012
Сообщений: 357
08.02.2014, 14:00 5
Если принять, что тире это разделитель можно вот так:
(нужно добавить memo1):

Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
var
Data: TStringList;
i:Integer;
begin
data:=TStringList.Create;
data.Delimiter:='-';
Data.DelimitedText :=('delphi-xxxx');
for i := 0 to data.Count-1 do
begin
memo1.Lines.Add(data.Strings[i]);
end;
data.Free;
end;
0
843 / 738 / 342
Регистрация: 22.09.2012
Сообщений: 5,034
08.02.2014, 14:17 6
Все очень просто, функция Pos совместно с функцией Copy

Pos считает откуда и до куда копировать, данный пример копирует любой текст что нажодится между словами Меня и Вася.

Delphi
1
2
3
4
5
6
7
8
9
10
11
procedure TForm1.Button1Click(Sender: TObject);
var
   s,p: string;
   s1,s2: Integer;
begin
  s:= 'Меня зовут Вася';
  s1:= Pos( 'Меня', s);
  s2:= Pos( 'Вася', s);
  p:= Copy( s, s1+5, s2-s1-6);
  ShowMessage(p);
end;
0
08.02.2014, 14:17
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
08.02.2014, 14:17
Помогаю со студенческими работами здесь

Составьте программу, выясняющую, есть ли в заданной строке Х заданное слово Y, и, если есть, то вывести слово, следующее в строке за этим словом
Составьте программу, выясняющую, есть ли в заданной строке Х заданное слово Y, и, если есть, то...

Как изменить верхнее слово в форуме
на вверху моего сайта написно пхпББ креатинг коммунитиес как его изменить плиз скажите подробно!я...

Как изменить только одно слово
Есть строка: я сегодня шёл по улице, шёл долго и легко. Как можно сделать, чтобы регулярное...

Изменить на заданое слово четвертое слово файла
1) В существующем типизированом файле, элементами которого являются отдельные слова, изменить на...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru