如何从字符串中提取数字:
$1.50
除货币符号外的所有内容。或者从这样的事情:
rofl1.50lmao
只是询问是否存在我不知道的现有功能。
答案 0 :(得分:4)
AS3中没有内置功能。像这样的简单RegExp可以帮助你:
/[0-9]+.?[0-9]*/
这是一个示例,应根据您的上下文进行重构。
以下是来自Gunslinger47的更精确的RegEx:
/-?\d*\.?\d+([eE]\d+)?/
答案 1 :(得分:1)
这是“普通”JavaScript,但FWIW:
justNumsAndDots = "rofl1.50lmao".replace(/[^\d.]/g,"") // -> "1.50" (string)
asIntegral = parseInt("0" + justNumsAndDots, 10) // -> 1 (number)
asNumber = parseFloat("0" + justNumsAndDots) // -> 1.5 (number)
asTwoDecimalPlaces = (2 + asNumber).toFixed(2) // -> "3.50" (string)
注意:
parseFloat(".") -> NaN
,parseFloat("0.") -> 0
)。如果需要NaN,请改为套件。快乐的编码。
答案 2 :(得分:1)
据我所知,没有。您可以针对有效字符数组解析每个字符,或使用regexp。