ermac,
Cita:
|
Empezado por ermac
...estoy tratando de hacerlo pero con una función recursiva que reciba una frase y sustituto...lo quiero hacer en consola...
|
Cita:
|
Empezado por nlsgarcia
Pregunto : ¿Por que quieres hacerlo de forma recursiva? 
|
Revisa este código:
Código Delphi
[-]
program Project1;
{$APPTYPE CONSOLE}
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;
function StringReplaceRecursive(S, OldPattern, NewPattern : String) : String;
var
P : Integer;
begin
P := Pos(OldPattern,S);
if P <> 0 then
begin
Delete(S, P, Length(OldPattern));
Insert(NewPattern, S, P);
Result := StringReplaceRecursive(S, OldPattern, NewPattern);
end
else
Result := S;
end;
var
S, OldPattern, NewPattern : String;
begin
S := InputBox('Cambio de Frase', 'Ingrese una frase:', '');
OldPattern := InputBox('Cambio de Frase', 'Ingrese OldPattern:', '');
NewPattern := InputBox('Cambio de Frase', 'Ingrese NewPattern:', '');
MessageDlg(S,mtInformation,[mbOK],0);
S := StringReplaceRecursive(S, OldPattern, NewPattern);
MessageDlg(S,mtInformation,[mbOK],0);
end.
El código anterior en Delphi 7 sobre Windows 7 Professional x32,
Utiliza una función recursiva para sustituir un patrón en un string y visualiza el resultado antes y después de la misma a nivel de consola.
Espero sea útil 
Nelson.