Javascript 仅更改变量内的数字?

Javascript 仅更改变量内的数字?,javascript,jquery,Javascript,Jquery,如果您有: var something = $('.element').text(); // something = 'The tortoise ran 5 times faster than the fox.'; 有没有一种方法可以编辑它,将5更改为新变量中的另一个数字?所以我明白了 newSomething = 'The tortoise ran 6 times faster than the fox.'; 注意:var某物中的数字是动态的,可以是0->100之间的任何数字

如果您有:

   var something = $('.element').text();
    // something = 'The tortoise ran 5 times faster than the fox.';
有没有一种方法可以编辑它,将5更改为新变量中的另一个数字?所以我明白了

newSomething = 'The tortoise ran 6 times faster than the fox.';
注意:var某物中的数字是动态的,可以是0->100之间的任何数字,我需要将其递增1,并且需要动态递增。我无法将该数字分配给var,因为它来自文档加载并正在分配

var something = $('.element').text();
var newSomething = something.replace(/\d+/, function(match) {
    return (Number(match) + 1).toString();
});
关于发生了什么的一些信息:代码使用了更复杂的函数形式。范式只接受两个字符串,并用第二个字符串替换第一个字符串的任何出现

在本例中,str.replace还可以使用一个来搜索,\d+,这意味着一个或多个数字,以及一个replace函数,正如我在这里使用的那样。我使用了一个匿名函数表达式,它接受一个参数匹配。对于每个匹配项都会调用此函数,因此如果字符串有多个匹配项,它将运行多次

在函数中,匹配项(字符串)被转换为数字,递增,然后转换回字符串。然后,这将作为匹配替换的结果返回。

定义变量

var num = 5;
var something = 'The tortoise ran ' + num + ' times faster than the fox.';

function whatever(){
 num++;
something = 'The tortoise ran ' + num + ' times faster than the fox.';
}

在php中,如何在您的数字周围包装一个跨度,以便您可以使用javascript轻松访问它:

HTML


或者你想要更有用的东西吗?这显然是正确的答案,足以回答OP的问题。这是好的正确答案,但是如果数字是动态的呢?我可能需要动态更改X编号,但我无法将其设置为“乌龟跑”+num+。。。正如其他人所建议的那样php@user2413333:它总是一个数字吗?你知道哪个号码吗?只有一个号码吗?你需要增加它吗?为什么PHP不给你“5”?它总是一个数字,但我不知道是哪个数字,它可以是从1到100的任何数字。我需要增加1,你想做什么?如果你告诉我们,我们可能会提供更多细节或提出更好的解决方案。我不理解对这个答案的反对票。我对它投了赞成票,因为它传达了一种通过更新变量而不是使用内置函数替换变量来解决问题的方法。我觉得这是一个很有道理的建议。@user241333很乐意帮忙。
<span class="element">The tortoise ran <span class="number">6</span> times faster than the fox.</span>
var number = Number($('.number').text());
$('.number').text(number + 1);