11548 sujets

JavaScript, DOM et API Web HTML5

Salut, j'voulais savoir si c'est possible de découper le contenu d'un variable, par exemple :
url = images/albumX/imageY.jpg;
J'veux incrémenter ou décrémenter le Y (previous et next sur des images).
Merci.
Modifié par Dinduks (25 Mar 2010 - 19:33)
Salut,

Quelque chose comme ça ?

var url = "images/album12/image15.jpg",
	seg = url.split(/\/|\./);

// augmente y
seg[2] = "image" + (parseInt(seg[2].substring(5)) + 1); //5 correspond au nombre de à sauter (nb caractères dans "image")
// augmente x
//seg[1] = "album" + (parseInt(seg[1].substring(5)) + 1);

seg[2] += "."+seg.pop(); 
alert(seg.join("/"));
Ca marche. ;D
Faut dire que la manipulation des strings ( Smiley langue ) n'a jamais été mon fort.
Merci.
Modifié par Dinduks (26 Mar 2010 - 14:25)
Hello,

Un peu plus bref, avec une expression régulière :
alert(url.replace(/(\d+)(\.jpg)$/, function(a, b, c) { return (+b + 1) + c; }));
Dans mes souvenirs, il me semblais que les assertions complexes ne marchent pas dans tous les navigateurs en javascript....
QuentinC a écrit :
Dans mes souvenirs, il me semblais que les assertions complexes ne marchent pas dans tous les navigateurs en javascript....

C'est bien possible.