Javascript 使用jQuery从HTML内容中提取数字

Javascript 使用jQuery从HTML内容中提取数字,javascript,jquery,Javascript,Jquery,我只是想从这些div中获取数字,所以没有“$”或“/BX” 您可以用空字符串替换这两个(“$”和“/BX”)字符串,如果它们存在,将有效地删除它们: myString = myString.replace("$", "").replace("/BX", ""); 例如,如果myString是值“$6.16/BX”,这将使其成为“6.16” 或者你可以做一个函数,除去数字和句点之外的所有东西。例如: 函数getNumerFromString(str) { 返回str.replace(/[^0-

我只是想从这些div中获取数字,所以没有“$”或“/BX”


您可以用空字符串替换这两个(
“$”
“/BX”
)字符串,如果它们存在,将有效地删除它们:

myString = myString.replace("$", "").replace("/BX", "");
例如,如果
myString
是值
“$6.16/BX”
,这将使其成为
“6.16”

或者你可以做一个函数,除去数字和句点之外的所有东西。例如:

函数getNumerFromString(str) { 返回str.replace(/[^0-9\.]/g,”); } console.log(getNumerFromString($6.16/BX))) log(getNumerFromString($12.32”)) log(getNumerFromString(“abc$1.00def”)RegEx

$('.Price').text().replace(/[^0-9]/gi, '');
 var number = parseInt(Price, 10);
 $('.SRPRef').text().replace(/[^0-9]/gi, '');
 var number2 = parseInt(SRPRef, 10);

您可以使用以下方法仅提取小数:

function extractNumber(string2extract){
    var numberPattern = /[0-9]+(\.[0-9][0-9]?)?/g;
    return string2extract.match(numberPattern);
}

var PriceReftxt = extractNumber($('.Price').text());
var SRPReftxt   = extractNumber($('.SRPRef').text());

在尝试解析事物时,经常使用。以您的标记类为例。如果你真的想做一些数学运算,只需
parseInt

//获取我们的号码
var res1=$(“.SRPRef”).text().match(/\d*\.?\d+/);
var res2=$(“.Price”).text().match(/\d*\.?\d+/);
//显示我们的结果
$(“.result”).html(res1+”
“+res2)

$6.16/BX
$12.32
结果:

是一种东西,比
parseInt
更适合您的目的。@billynoah的可能重复的可能重复的问题是它不考虑十进制数。我知道OP上说的是“整数”,但我不认为这是他们的意思。
string.match(\d+[\,]?\d*/)
匹配带小数点(或逗号)和不带小数点的数字。如果您使用的是小数(如所讨论的示例所示),那么您需要的是
parseFloat
,而不是`parseInt(正如@MikeMcCaughan所建议的那样)。
$('.Price').text().replace(/[^0-9]/gi, '');
 var number = parseInt(Price, 10);
 $('.SRPRef').text().replace(/[^0-9]/gi, '');
 var number2 = parseInt(SRPRef, 10);
function extractNumber(string2extract){
    var numberPattern = /[0-9]+(\.[0-9][0-9]?)?/g;
    return string2extract.match(numberPattern);
}

var PriceReftxt = extractNumber($('.Price').text());
var SRPReftxt   = extractNumber($('.SRPRef').text());