从带有Jquery的String中获取数字

时间:2014-04-02 15:05:38

标签: jquery string numbers

在我的系统中,var PRICE将具有不同的格式,具体取决于用户设置的CURRENCY配置。所以我可以获得如下值:

a)价格:4.5美元|| b)价格:4.5€|| c)价格:Bs。 4.5 || d)价格:4.5₵

我不知道货币符号在之前是还是之后是,我不知道它将是什么符号(它的OpenERP框架因此不能改变格式)

尽管有货币符号,我如何得到这个数字?

3 个答案:

答案 0 :(得分:1)

一旦你得到字符串,你可以替换每个非数字字符和点:

var number = '$ 4.5'.replace(/[^\d\.]/g, '');

然后你可以解析它:

number = parseFloat(number);
//Alternatively
number = +number;

答案 1 :(得分:1)

我通过使用JQuery替换任何不是数字或''的字符来解决您的问题。 (点)。

我创建了一些带有这样值的跨度:

<span>$4.10</span>
  <span>£7.76</span>
  <span>€23.44</span>

然后创建了一些JQuery来提醒值:

$("span").each(function(){
  var a = $(this).text().replace(/[^0-9.]/g, "");
  alert(a);  
});

这是一个你可以搞砸的JSFiddle:http://jsbin.com/xelameki/1/edit/

我希望它有帮助=)

答案 2 :(得分:0)

我做了以下测试:

$(document).ready(function(){
 var price1 = "$ 4.5"; 
 var price2 = "4.5 €"; 
 var price3 = "Bs. 4.5"; 
 var price4 = "4.5 ₵";
 $("#test").append(price1.split(" ")[1]);
 $("#test").append(price2.split(" ")[0]);
 $("#test").append(price3.split(" ")[1]);
 $("#test").append(price4.split(" ")[0]);
});

工作小提琴:http://jsfiddle.net/robertrozas/H4QUu/1/