2010-01-25 21 views
21

Quiero convertir un número de cadena como "1,427.76" a un número en coldfusion pero la coma lo hace fallar. ¿Hay una manera simple de hacerlo además de tener que quitar la coma?¿Cómo convertir una representación de cadena de un número a un número en coldfusion?

<cfset string = "1,427.75"> 

<cfset number = string * 100> 

El error se produce al intentar realizar operaciones matemáticas en él. Si se elimina la coma, funciona bien, pero obtengo la coma de un cálculo de base de datos.

Respuesta

43

Sé que usted puede utilizar LSParseNumber:

<cfset string = "1,427.75"> 

<cfset number = LSParseNumber(string) * 100> 
+0

Eso funcionó muy bien, gracias! –

+2

@Scott Chantry si la respuesta de la derivación funcionó para usted, no olvide elegirla como la respuesta aceptada. :) – mwcz

8

Val() funciona tan bien para las conversiones simples en los que no se preocupan por la configuración regional, por ejemplo, Val ('123.45')

+1

Usar Val solo funciona cuando no hay coma. –

+0

fácil de arreglar con una cadena = val (string.replaceAll ('[^ 0-9 \.] +', '')); –

+1

usando val() es aproximadamente 2 veces más rápido que lsParseNumber() –

Cuestiones relacionadas