Форум: "Основная";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.03.07;
Скачать: [xml.tar.bz2];




Вниз

Определить подстроку в строке 


Sergy   (2002-02-18 12:15) [0]

Задача до банальности проста, но ничего грамотного в голову не лезет:
есть строка : "1=aaa,2=bbbb,7=ccc,4=qqq"
Как из этой строки выделить подстроку "7=ccc"?



Alx2   (2002-02-18 12:19) [1]

см. функцию pos



MBo   (2002-02-18 12:21) [2]

также см. Copy и TStringList.Commatext



Sergy   (2002-02-18 12:23) [3]

>Alx2. Если я заранее не знаю, что это "7=ccc", а может это будет "7=lllll", то как мне воспользоваться фунцией POS&



Alx2   (2002-02-18 12:30) [4]

>Sergy (18.02.02 12:23)
Ищи позицию "7=" и далее смотри чему оно равно.
Вообще, следует более детально описать, что значит "выделить подстроку"



Юрий Зотов   (2002-02-18 12:34) [5]

См. у TStringList:

Commatext
Names
Values



Alx2   (2002-02-18 12:53) [6]


function GetValue(Const subStr,FromStr:String):String;
Var id : Integer;
begin
Result := "";
Id := pos(subStr,FromStr);
if Id>0 then
begin
Result := Copy(FromStr,Id+Length(SubStr),Length(FromStr));
Id := pos(",",Result);
if Id>0 then
SetLength(Result,Id-1);
end;
end;

Пример:
GetValue("1=","1=aaa,2=bbbb,7=ccc,4=qqq") = "aaa"



[NIKEL]   (2002-02-18 13:43) [7]

и невольно вспоминаешь про Perl и его (в его реализации) регулярные выражения :)




Форум: "Основная";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.03.07;
Скачать: [xml.tar.bz2];




Наверх





Память: 0.72 MB
Время: 0.016 c
1-19137           Андре                 2002-02-20 12:32  2002.03.07  
TDBRichEdit


4-19395           JS                    2002-01-06 00:56  2002.03.07  
Загрузка DLL в чужой процесс


14-19352          Z                     2002-01-16 01:29  2002.03.07  
>Получение и установка видеорежимов в Windows


1-19230           Kolyan                2002-02-12 17:30  2002.03.07  
Дочерняя форма в Dll


1-19252           Марина                2002-02-20 09:44  2002.03.07  
FastReport