Javascript 使用jQuery从HTML内容中提取数字
我只是想从这些div中获取数字,所以没有“$”或“/BX”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-
您可以用空字符串替换这两个(
“$”
和“/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());