PDA

Просмотр полной версии : [Помогите!] Парсинг текста с ковычками.


hiddenf
15.09.2013, 10:03
Доброе время суток жуковцы, хотел бы спросить, как так можно сделать, тоесть я использую функцию парсинга
function Pars(T_, ForS, _T:string):string;
var a, b:integer;
begin
Result := '';
if (T_='') or (ForS='') or (_T='') then Exit;
a:=Pos(T_, ForS);
if a=0 then Exit else a:=a+Length(T_);
ForS:=Copy(ForS, a, Length(ForS)-a+1);
b:=Pos(_T, ForS);
if b>0 then
Result:=Copy(ForS, 1, b - 1);
end;

И пытаюсь спарсить:
<input type='hidden' name='auth_key' value='
Как видете, тут много ковычек, и делфи выдает ошибки из-за них, прошу вас помочь!

NebesaBag
15.09.2013, 14:00
'#39'
Данное сочетание и есть символ '

hiddenf
15.09.2013, 19:39
'#39'
Данное сочетание и есть символ '

Спасибо, опробую

windust
13.11.2013, 06:33
function Pars(T_, ForS, _T: string): string;
var a, b:integer;
begin
Result := '';
if (T_='') or (ForS='') or (_T='') then Exit;
a:=Pos(T_, ForS);
if a=0 then Exit else a:=a+Length(T_);
ForS:=Copy(ForS, a, Length(ForS)-a+1);
b:=Pos(_T, ForS);
if b>0 then
Result:=Copy(ForS, 1, b - 1);
end;


procedure TForm1.sButton1Click(Sender: TObject);
var
zm1,zm2:string;
begin
zm1:=pars('<input type=''',sMemo1.Text,'''');
zm2:=pars('name=''',sMemo1.Text,'''');
Form1.sEdit1.Text:=zm1;
Form1.sEdit2.Text:=zm2;
end;

NebesaBag
13.11.2013, 09:59
zm1:=pars('<input type=''',sMemo1.Text,'''');
zm2:=pars('name=''',sMemo1.Text,'''');

Меня одного эти строки смутили?

J-Fobos
15.11.2013, 20:20
NebesaBag, все верно написано.

var
a:string;

a:='''';

В переменной а будет строка '