16/01/2006

Replace numa String

Ola pessoal,

Bem é o seguinte...eu tenho uma string que tem algumas quebras de linha desnecessárias.
Oq eu preciso fazer é remover essas quebras...Se eu colar isso no EDITPLUS, habilitar a opção ´Regular Expression´ e mandar procurar ´\n´, ele acha as quebras....Mais isso pelo delphi??? Como q eu faço pra ele reconhecer a ´Regular Expression´????


Vlw Pela Atenção


Eduardo Buffara


Eduardobuffara

Respostas

16/01/2006

Massuda

Você pode fazer isso sem usar expressões regulares (que não tem em Delphi/Win32)... use StringReplace da unti SysUtils; por exemplo...
var
  S: string;
...
  S := ´Delphi 2005´;
  S := StringReplace(S, ´2005´, ´2006´, [rfReplaceAll&93;);
  // S = ´Delphi 2006´;



Responder Citar

16/01/2006

Michael

Olá!

Não é necessário usar expressões regulares para fazer o que vc quer. O Delphi provê a função [b:95a7e7f330]StringReplace[/b:95a7e7f330], que substitui strings dentro de uma outra. Basta fazer isso:

S := StringReplace(S, sLineBreak, ´´, [rfReplaceAll&93;);


Use sempre a constante global [b:95a7e7f330]sLineBreak [/b:95a7e7f330]quando precisar fazer referência a uma quebra de linha, pois ela é ´sensível´ ao sistema operacional onde a aplicação é compilada. Então no Linux, por exemplo, seu valor não será o mesmo do Windows, e vc não vai precisar se preocupar em adaptar seu software.

Se mesmo assim quiser usar expressões regulares, existe um ótimo componente chamado [url=http://regexpstudio.com/TRegExpr/TRegExpr.html]TRegExpr[/url]. Porém, o site parece ter saído do ar em 1 de janeiro deste ano. :-(

[]´s


Responder Citar

16/01/2006

Michael

Ops, foi mais rápido que eu, hein [b:df9c2ee522]Massuda[/b:df9c2ee522]... :lol:

[]´s


Responder Citar

16/01/2006

Eduardobuffara

Ok Massuda,

Mais dae oq e mando ele procurar??? #13??? \n ???? Preciso q ele ache a maldita quebra de linha...e subistitua por nd....

Flw

Eduardo Buffara


Responder Citar

16/01/2006

Eduardobuffara

Nem tinha visto o seu comentario Michel....

Vlw vou testar!!!


Responder Citar

16/01/2006

Michael

Ok. Apenas troque Michel por [b:936338aab0]Michael[/b:936338aab0]. ;-)

[]´s


Responder Citar

20/01/2006

Massuda

Porém, o site parece ter saído do ar em 1 de janeiro deste ano. :-(
Só para registrar, hoje, 20/1, o site voltou ao ar.


Responder Citar