PDA

Ver la Versión Completa : remplazar mas de un caracter en string


gonza_619
09-11-2010, 16:13:48
hola a todos , bueno mi consulta es la sig: tengo este valor tipo money ($1.500) pero necesito remplzar el signo $ y el punto '.' para que qede (1500) entonces luego poder hacer una operacion

lo hice con stringreplace( dbedit2.text, '$', '', ([rfreplaceall])

y me saco el signo $, pero no se como sacar el punto ala misma vez.
gracais de antemano

urixiv
09-11-2010, 16:32:39
Hola,
Una manera sencilla podria ser anidar los stringreplace

Stringreplace(stringreplace( dbedit2.text, '$', '', [rfreplaceall]), '.', '', [rfReplaceAll])

Salu2

gonza_619
09-11-2010, 16:38:23
buenisimo gracias funciono de maravillas

urixiv
09-11-2010, 16:41:00
De nada, un placer poder ayudar!!!!:)

ContraVeneno
09-11-2010, 17:15:52
¿y si solamente usas ".AsCurrency" en lugar de ".Text"?

rrf
09-11-2010, 18:49:53
Hola.

Está claro que la duda está resuelta y de una forma excelente.

Pero, para mí, lo hubiera resuelto en 2 líneas de código:


stringreplace( dbedit2.text, '$', '', ([rfreplaceall]) ;
stringreplace( dbedit2.text, '.', '', ([rfreplaceall]) ;


El código es más largo, aunque me parece más sencillo de revisar si hay un error.

Saludos.

gonza_619
09-11-2010, 19:14:31
no lo he probado , pero seguro funciona gracias por la ayuda

ecfisa
09-11-2010, 20:09:43
Hola.

Coincido con lo dicho por ContraVeneno, me parece más simple:


Label1.Caption:= FloatToStr(DBEDit1.Field.AsCurrency);


Saludos. :)

rrf
09-11-2010, 20:22:33
La solución que aporté seguro que no funciona bien (no me dí cuenta de que era un DBEdit) porque habría que hacer el proceso en 1 sola orden, como lo propone la solución de gonza_619.

Saludos.