Javascript 用变量中的特定数字替换任何数字
我有这样的链接foo.net/index.php?page=15 我需要替换page=xxx之后的任何数字,并从变量中获取新的数字 这是我当前的代码,将15替换为16Javascript 用变量中的特定数字替换任何数字,javascript,jquery,Javascript,Jquery,我有这样的链接foo.net/index.php?page=15 我需要替换page=xxx之后的任何数字,并从变量中获取新的数字 这是我当前的代码,将15替换为16 var num = 16, // What if the str = foo.net/index.php?page=10 str = 'foo.net/index.php?page=15', n = str.replace('15',num); $('span').html(n); 您可以在中检查代码。如果要
var num = 16,
// What if the str = foo.net/index.php?page=10
str = 'foo.net/index.php?page=15',
n = str.replace('15',num);
$('span').html(n);
您可以在中检查代码。如果要选择并替换字符串中的数字,可以使用正则表达式:
// Replacing macting number with the specified value
var n = str.replace(/\d+/, num);
如果要对匹配值进行加/减/除/乘,还可以使用.replace()
方法的回调函数:
var n = str.replace(/\d+/, function(number) {
return number + 1;
});
.
var n=str.replace(/\d+/,num)代码>?有点脏的解决方案可能是n=str.split('page=')[0]+'page='+num代码>,但它可以工作。是否要用一个更大的数字替换现有数字?那么15到16,92到93?@Jim,这是正则表达式-你太好了,重点不是信誉点:),谢谢。如果页面链接有像foo.net/index2.php这样的数字怎么办?page=15,有没有办法在=@Jim是的,你可以将=
添加到正则表达式中,str.replace(/=\d+/,'=n')代码>