|  | 
 
 | 
| 
 | |||||||
| Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны | 
|  | 
|  | Опции темы | Поиск в этой теме | Опции просмотра | 
|  | 
| 
			 
			#1  
			
			
			
			
		 | ||||
| 
 | ||||
|  Работа со строками Приветствую!  Ребята, скажите как из строки такого типа: "255,155,155" вытащить каждое из трех значений в переменную? | 
| 
			 
			#2  
			
			
			
			
		 | ||||
| 
 | ||||
|   Copy() с позициями групп чисел. Подходит при постоянной длине исходной строки. | 
| Этот пользователь сказал Спасибо NumLock за это полезное сообщение: | ||
|  
Alloc (14.02.2016)
 | ||
| 
			 
			#3  
			
			
			
			
		 | |||
| 
 | |||
|   Если строка всегда по одному шаблону,то  Код: var S,S1,S2,S3:String; begin S:='255,255,255'; S1:=Copy(S,1,3); S2:=Copy(S,4,3); S3:=Copy(S,9,3); end; | 
| Этот пользователь сказал Спасибо Oleg.E за это полезное сообщение: | ||
|  
Alloc (14.02.2016)
 | ||
| 
			 
			#4  
			
			
			
			
		 | ||||
| 
 | ||||
|   Цитата: 
 Дело в том, что значения могут быть и такого типа: 10,122,255.. поэтому нужно как то смотреть по запятым, но вот я не знаю как. Вообще это у меня цвет в RGB который я буду сохранять и загружать в/из ini файла | 
| 
			 
			#5  
			
			
			
			
		 | ||||
| 
 | ||||
|   Цитата: 
 большая ссылка | 
| Этот пользователь сказал Спасибо Verevkin за это полезное сообщение: | ||
|  
Alloc (15.02.2016)
 | ||
| 
			 
			#6  
			
			
			
			
		 | |||
| 
 | |||
|   как-то так Код: var
  S:String;
  S1,S2,S3:String;
  p:Integer;
begin
  S:='1,15,255';
  p:=pos(',',S);
  S1:=copy(S,1,p-1);
  S:=copy(S,P+1,100);//100-заведомо большое число
  S2:=Copy(S,1,p-1);
  S3:=Copy(S,p+1,100);
end; | 
| 
			 
			#7  
			
			
			
			
		 | ||||
| 
 | ||||
|   Можно ещё средствами строкового списка Код: var dt: array of byte; sl: TStrings; i: integer; begin Memo1.Clear; sl:= TStringList.Create; sl.DelimitedText:= '10,122, 255,243 1,5,62'; SetLength(dt, sl.Count); for i := Low(dt) to High(dt) do dt[i]:= StrToInt(sl[i]); sl.Free; end; |