<div dir="ltr">impresionante, me solucionaste el tema. Muchas gracias</div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">El mié, 12 ene 2022 a las 6:09, José Mejuto via Lazarus-es (<<a href="mailto:lazarus-es@lists.lazarus-ide.org">lazarus-es@lists.lazarus-ide.org</a>>) escribió:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">El 11/01/2022 a las 21:59, Maxi via Lazarus-es escribió:<br>
> Existe alguna libreria para parsear algo como esto?<br>
> Todo lo que está entre <> corresponde a un tag y seguido el valor que le <br>
> corresponde.<br>
> Imagino se puede hacer con la synedit o similar pero no encontre como.<br>
<br>
Hola,<br>
<br>
Versión rápida, habría que controlar errores y eso pero bueno:<br>
<br>
function Parse(const aStr: string): TStringList;<br>
var<br>
   lGroups: TStringList;<br>
   lEach: TStringList;<br>
   j: Integer;<br>
begin<br>
   Result:=TStringList.Create;<br>
   lGroups:=TStringList.Create;<br>
   lEach:=TStringList.Create;<br>
   lGroups.Delimiter:='<';<br>
   lGroups.DelimitedText:=aStr;<br>
   lEach.Delimiter:='>';<br>
   for j := 0 to Pred(lGroups.Count) do<br>
   begin<br>
     lEach.DelimitedText:=lGroups[j];<br>
     if lEach.Count=2 then begin<br>
       Result.Add(lEach[0]+'='+lEach[1]);<br>
     end;<br>
   end;<br>
<br>
   FreeAndNil(lGroups);<br>
   FreeAndNil(lEach);<br>
end;<br>
<br>
var<br>
   gTest: TStringList;<br>
   j: Integer;<br>
begin<br>
   gTest:=Parse(t);<br>
   for j := 0 to Pred(gTest.Count) do<br>
   begin<br>
     writeln(gTest.Names[j],' = ',gTest.ValueFromIndex[j]);<br>
   end;<br>
end.<br>
<br>
-- <br>
<br>
_______________________________________________<br>
Lazarus-es mailing list<br>
<a href="mailto:Lazarus-es@lists.lazarus-ide.org" target="_blank">Lazarus-es@lists.lazarus-ide.org</a><br>
<a href="https://lists.lazarus-ide.org/listinfo/lazarus-es" rel="noreferrer" target="_blank">https://lists.lazarus-ide.org/listinfo/lazarus-es</a><br>
</blockquote></div><br clear="all"><div><br></div>-- <br><div dir="ltr" class="gmail_signature"><div dir="ltr">El que pregunta aprende, y el que contesta aprende a responder.<br><br>No a la obsolecencia programada: <a href="http://www.rtve.es/noticias/20110104/productos-consumo-duran-cada-vez-menos/392498.shtml" target="_blank">http://www.rtve.es/noticias/20110104/productos-consumo-duran-cada-vez-menos/392498.shtml</a><br></div></div>