2015-02-25 4 views
0

У меня есть пейджер с этим URL: news?page=1&f[0]=domain_access%3A3".Javascript Regex первый символ после встречаемости

мне нужно регулярное выражение для замены page=1 с page=2

1-и 2 являются переменными, так что мне нужно найти page= + первый символ после этого.

Как я могу это сделать

@EDIT:

из ответов, я дистиллированная

var url = $('ul.pager .pager-next a').attr("href"); 
var re = /page=(\d+)/i; 
var page = url.match(re); 
var splitPage = page[0].split("="); 
var pageNumber = parseInt(splitPage[1]); 
pageNumber += 1; 
var nextPagePart = 'page=' + pageNumber; 
var nextPageUrl = url.replace(re, nextPagePart); 
$('ul.pager .pager-next a').attr("href", nextPageUrl); 

Там может быть короче подход?

+0

Как насчет: '/ page = (\ d +) /' –

+0

Посмотрите на мое редактирование. Это в основном то же самое, просто короче. – marsze

ответ

2

Как это:

var url = 'news?page=1&f[0]=domain_access%3A3"'; 
var page = 2; 
url = url.replace(/page=\d+/, 'page=' + page); 

EDIT

Чтобы достичь того, что было в вашем редактирования:

var obj = $('ul.pager .pager-next a'); 
var url = obj.attr('href'); 
url = url.replace(/page=\d+/, 'page=' + (++url.match(/page=(\d+)/)[1])); 
obj.attr('href', url); 
0

Если вы хотите заменить только номер страницы, а остальное вас может попробовать что-то вроде этого:
s/\(.*\)page=\d{1,}\(.*\)/\1number_to_replace\2/

+0

Сначала мне нужно знать новое число в зависимости от старого. – Nealv

Смежные вопросы