JavaScript中的正则表达式:隔离一个int值

Regular expression in JavaScript: Isolate a int value

本文关键字:一个 int 正则表达式 隔离 JavaScript      更新时间:2023-09-26

我想隔离这个纯文本中的第二个数字(不是HTML代码,只是一个例子):

Showing <span id="results_end">10</span> of <span id="results_total">55</span> items</div>

所以我的Regex表达式应该只返回数字55。

这是我自己最接近的一次:

/l">(.*)</span>/g

然而,这仍然会退回整个l">61</span>部分,这对我的需求来说太多了。

欢迎正则表达式专家提供任何帮助!

var match = /l">(.*)<'/span>/.exec(myString);
alert(match[1]);

正则表达式不是用来解析HTML的,尽管在像这样一个非常简单的情况下它可以工作。更好的方法是使用原生JS功能:

var inputString = 'Showing <span id="results_end">10</span> of <span id="results_total">55</span> items';
var el = document.createElement( 'html' );
el.innerHTML = inputString;
var num = parseInt(el.getElementById( 'results_total' ).innertext);

如果只想捕获数字,请使用模式为('d+)而不是(.*)的捕获组。