2015-01-19 3 views
0

Мне нужно преобразовать 'KM1 + 000.321' в 1000.321.Получить все числа из строки с десятичными знаками

Я попробовал этот

var string = 'KM1+000.321'; 

console.log(parseInt(string.replace(/\D/g, ''), 10)) //1000321 

Но это также удаляет десятичную. Как написать выражение, которое хранит десятичную дробь?

http://jsfiddle.net/bbn80knc/

ответ

1

Предполагая, что там будет только один десятичный, this will work:

var string = 'KM1+000.321'; 
console.log(parseFloat(string.replace(/[^\d.]/g, ''))) //1000.321 

Обратите внимание, что вам нужно использовать parseFloat, не parseInt, чтобы получить десятичные.

0
  1. Чтобы заменить все, кроме цифр и десятичной точки ни с чем, используйте

    string.replace (/ [^ \ d.]/Г, '')

  2. Для преобразования число с дробью, вы не можете использовать ParseInt(), но parseFloat(): ([.^\ d] string.replace (//г, ''))

    parseFloat

Смежные вопросы