Получить номер из строки с помощью Jquery

0

В моей системе var PRICE будет иметь разные форматы в зависимости от конфигурации CURRENCY, установленной пользователем. Поэтому я могу получить такие значения, как:

a) цена: $ 4.5 || б) цена: 4,5 € || c) цена: Bs. 4.5 || г) цена: 4.5 ₵

Я не знаю, будет ли символ валюты быть до или после номера, и я не знаю, какой символ он будет (это ракурс OpenERP, поэтому изменение формата не является вариантом)

Как получить номер, несмотря на символ валюты?

  • 0
    Вам нужен только номер или значение с атрибутом валюты?
  • 0
    Просто посмотрите на цифры? /[\d.]+/ ? Какое тебе дело до того, какие символы есть?
Показать ещё 2 комментария
Теги:
string
numbers

3 ответа

1
Лучший ответ

Как только вы получите строку, ваш может заменить каждый символ без цифры и точку:

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

Затем вы можете разобрать его:

number = parseFloat(number);
//Alternatively
number = +number;
  • 0
    Даааа !!!!! оно работает !!!! большое Вам спасибо !!!!!
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/

Я надеюсь, что это поможет =)

  • 0
    Это работает, но решение, предоставленное Карлом Андре Ганьоном, короче. Спасибо за посещение моего вопроса в любом случае: D
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/

  • 0
    Как я уже сказал: «Я не знаю, будет ли символ валюты до или после числа». Решение, предоставленное Карлом Андре Ганьоном, как раз то, что мне нужно. Спасибо за посещение моего вопроса в любом случае: D

Ещё вопросы

Сообщество Overcoder
Наверх
Меню