2011-01-10 21 views
0

我使用的CurrencyFormatter解析2號到其貨幣表示的Actionscript解析貨幣得到一個號碼

currencyFormat.format( 「10」 + 「」 + 「99」)---> $ 10.99

我很好奇,如果有一種方法來解析一個字符串「10.99美元」回數/雙? 所以有可能得到小數點左邊的值和右邊的小數點。

謝謝,

回答

2

您可以通過多種方式做到這一點。這裏有2個關閉我的頭頂:

function currencyToNumbers($currency:String):Object { 
    var currencyRE:RegExp = /\$([1-9][0-9]+)\.?([0-9]{2})?/; 
    var val = currencyRE.exec($currency); 
    return {dollars:val[1], cents:val[2]}; 
} 


function currencyToNumbers2($currency:String):Object { 
    var dollarSignIndex:int = $currency.indexOf('$'); 
    if (dollarSignIndex != -1) { 
     $currency = $currency.substr(dollarSignIndex + 1); 
    } 
    var currencyParts = parseFloat($currency).toString().split("."); 
    return {dollars:currencyParts[0], cents:currencyParts[1]}; 
} 

var currency:Object = currencyToNumbers('$199.99'); 
trace(currency.dollars); 
trace(currency.cents); 

var currency2:Object = currencyToNumbers2('$199.99'); 
trace(currency2.dollars); 
trace(currency2.cents);