Rupesin tänään kokeilemaan JavaScriptin replace-funktiota. Sain kuitenkin ongelmia aikaan.
Siirry tähän osoitteeseen ja kirjoita seuraava selaimen osoiteriville
javascript:var sku=location.href;sku.replace("http:/www.dealextreme.com/forums/Forums.dx/Forum", "");sku.replace("/~~threadid.[0-9]/i", "");alert(sku);
Kokeilin sekä FF:llä että Chromella, mutta kummillakin alertin sisällöksi tulee
http://www.dealextreme.com/forums/Forums.dx/Forum.24~threadid.739338
Sisällöksi pitäisi tulla 24
, osaisitteko auttaa.. kiitos!
Replace ei muuta tekstiä itseään vaan palauttaa uuden tekstin.
var x = "hei"; var y = x.replace(/e/, "i"); alert(x); // hei alert(y); // hii
Kiitos vastauksesta,
miksei tämä kuitenkaan edelleenkään toimi:
javascript:sku1=location.href;sku2=sku1.replace("http:/www.dealextreme.com/forums/Forums.dx/Forum", "");sku=sku2.replace("/~~threadid.[0-9]/i", "");alert(sku);
Millä tavalla ei toimi? Koodi tekee varmasti juuri sen, mitä olet siihen kirjoittanut. Harmi vain, että osoite ei ala http:/www eikä loppupuolella ole kuin yksi ~-merkki, ja lisäksi korvauksesi poistaa viimeisestä numerosarjasta vain ensimmäisen numeromerkin. Tekisit siis viisaasti, jos kirjoittaisit lausekkeesi huolellisemmin.
Miten olisi tällainen paljon yksinkertaisempi lauseke:
alert(location.href.replace(/.*?(\d+)~.*/, '$1'));
Katsopas, vain kiitos paljon!
Aihe on jo aika vanha, joten et voi enää vastata siihen.