![]() |
|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
![]() как можно найти каждое третье слово в строке, чтоб записать их в edit?
Код:
Var s:string; begin s:='ололо трололо хехехе пффф ыыы"; Edit1.Text:= ???? end; может быть, как-то в этом направлении: Код:
n:=0; sn:=''; for i :=0 to Length(s) do if s[i]=' ' then inc(n); if n mod 3 = 0 then sn:= sn + ???????? edit1.Text:=sn; Aristarh Dark Последний раз редактировалось Fazotron, 28.05.2010 в 23:53. |
#2
|
||||
|
||||
![]() Написать парсер, больше тут никак...
Некоторые программисты настолько ленивы, что сразу пишут рабочий код. Если вас наказали ни за что - радуйтесь: вы ни в чем не виноваты. |
#3
|
|||
|
|||
![]() Да ладно, парсер.
Разбить фразу на слова по пробелу можно таким путем: Код:
var S : String; L : TStringList; begin S := 'ололо трололо хехехе пффф ыыы"; L := TStringList.Create; L.Text := StringReplace(S,' ',#13#10,[rfReplaceAll]); ... Далее циклом ищешь свои 3-и слова (индекс в списке с 0). |
#4
|
|||
|
|||
![]() Цитата:
Код:
For i:= 0 to ?? |
#5
|
||||
|
||||
![]() Цикл у тебя будет от 0 до L.Count-1 но внутри цикла просто надо делать проверку на каждый 3-элемент. if i mod 3 = 0 then ...
Жизнь такова какова она есть и больше никакова. Помогаю за спасибо. |
#6
|
|||
|
|||
![]() Вот, почти получилось, только он берет с 4ого слова:
Код:
sn:=''; L := TStringList.Create; L.Text := StringReplace(S,' ',#13#10,[rfReplaceAll]); For i:= 0 to L.Count-1 do if (i mod 3 = 0) and (i<>0) then sn:= sn + ' ' + L[i]; Edit1.Text:=sn; например, если текст "считать текст из файла на MEMO больше 10 слов каждое 3е слово записать в другой файл", то получается " файла больше каждое записать файл" он походу в TString первое слово просто не записывает как можно исправить? сори за даблпостинг Последний раз редактировалось Fazotron, 29.05.2010 в 17:34. |
#7
|
||||
|
||||
![]() to Fazotron
Все записывает, однако нумерация идет с нуля. Задумайся над этим. to lmikle В итоге и получился простейший парсер ![]() Некоторые программисты настолько ленивы, что сразу пишут рабочий код. Если вас наказали ни за что - радуйтесь: вы ни в чем не виноваты. |