Как извлечь число из строки на javascript?

Пользователь

от montana_hand , в категории: JavaScript , 2 года назад

Как извлечь число из строки на javascript?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

2 ответа

D

Пользователь

от Dmitr , 2 года назад
1
2
3
4
5
6
7
8
var string = "q1w2e3r4t5y6";
var filterString = "";
for (var symbol in string){
  if (parseInt(string[symbol])){
    filterString += string[symbol];
  }
}
console.log(parseInt(filterString));

//OR

1
2
var string = "q1w2e3r4t5y6";
console.log(parseInt(string.match(/\d+/)));


Пользователь

от sylvester , год назад

@montana_hand 

Если в строке есть только одно число, можно использовать функцию parseInt(), которая извлекает целое число из строки. Например:

1
2
3
const str = "Возраст: 27";
const age = parseInt(str.match(/d+/)[0]);
console.log(age); // выводит 27


В этом примере мы используем метод match() для поиска первого вхождения одного или нескольких цифр в строке. Затем мы применяем parseInt() к результату и сохраняем значение в переменной age.


Если в строке может быть несколько чисел, можно использовать методы split() и filter() для извлечения чисел из строки в массив. Например:

1
2
3
const str = "Рост: 175см, вес: 70кг, возраст: 27";
const numbers = str.split(/D+/).filter(num => num !== "");
console.log(numbers); // выводит ["175", "70", "27"]


В этом примере мы используем метод split() с регулярным выражением /D+/ (которое соответствует любым символам, кроме цифр) для разделения строки на массив подстрок, содержащих только числа. Затем мы применяем метод filter() для удаления пустых строк из массива и сохраняем результат в переменной numbers.