Замена части строки с помощью JavaScript? - PullRequest
1 голос
/ 23 июня 2009

Допустим, у меня есть URL, который выглядит примерно так:

http://www.mywebsite.com/param1:set1/param2:set2/param3:set3/

Я сделал это возможным в моем javascript, но теперь я хочу изменить "param2: set2" на "param2: set5" или что-то еще. Как мне взять эту часть строки и изменить ее?

Следует отметить, что в строке может указываться «param2 ...», а также количество символов после «:». Я знаю, что могу использовать подстроку, чтобы получить часть строки спереди, но я не уверен, как взять ее с конца или где-нибудь посередине.

Ответы [ 4 ]

6 голосов
/ 23 июня 2009

Как насчет этого?

>>> var url = 'http://www.mywebsite.com/param1:set1/param2:set2/param3:set3/';
>>> url.replace(/param2:[^/]+/i, 'param2:set5'); 
"http://www.mywebsite.com/param1:set1/param2:set5/param3:set3/"
4 голосов
/ 23 июня 2009

Используйте регулярные выражения;)

url.replace(/param2:([\d\w])+/, 'param2:new_string')
2 голосов
/ 23 июня 2009
var key = "param2";
var newKey = "paramX";
var newValue = "valueX";

var oldURL = "http://www.mywebsite.com/param1:set1/param2:set2/param3:set3/";

var newURL = oldURL.replace( new RegExp( key + ":[^/]+" ), newKey + ":" + newValue);
0 голосов
/ 23 июня 2009

Вы можете передавать регулярные выражения в функции match () и replace () в javascript.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...