Página 1 de 1

Funcion Delimitador pascal

Publicado: 29 Jun 2014, 06:29
por crack81
funcion sencilla que extrae un cadena entre dos delimitadores
function Delimitador(cadena,delm1,delm2:string):string;
var
pos1,pos2:integer;
ext,sfinal:string;
begin
  sfinal:='';
  pos1:=AnsiPos(delm1,cadena);
  if pos1<>0 then
  begin
    ext:=copy(cadena,pos1+length(delm1),length(cadena)-length(delm1));
    pos2:=AnsiPos(delm2,ext);
    if pos2<>0 then
    begin
      sfinal:=copy(ext,1,pos2-1);
    end;
  end;
 result:=sfinal;
end;
Ejemplo de uso:
begin
  writeln(delimitador('hola_mundo_como_estas','hola','estas'));
  {devolveria: _mundo_como_ }
  readln;
end.

Re: Funcion Delimitador pascal

Publicado: 29 Jun 2014, 06:37
por strup
Muy buena crack81 sigue dandole duro que pascal es un buenisimo lenguaje y la funcion te quedo buenisima, yo hice hace un tiempo esta funcion en haskell pero no la publique por que es para un modulo que ando escribiendo, tal vez la publique alguna vez xD, propongo hacer otra que me hice en haskell tambien para el mismo modulo, que inserta una cadena entre dos delimitadores, la llame insertList pero se puede llamar insertStr o como quieras xDD, un saludo y dale duro crack81, salu2