Autor Zpráva
H13
Profil
Ahoj potřeboval bych vložit proměnnou do regulárního výrazu, ale nějak mi to nefunguje, příklad:

var retezec = "Nejaka veta s timto vyrazem: vyraz[0]";
var stary_vyraz = /vyraz[0]/;
var novy_vyraz = "vyraz";
retezec = retezec.replace(stary_vyraz, novy_vyraz);
alert(retezec);

Alert vypíše místo "vyraz[0]" slovo "vyraz" - vše funguje jak má, najde se "vyraz[0]" a ten se nahradí slovem "vyraz", jenže já potřebuji nahradit nulu proměnnou a nevím jak ji tam mám vložit:

var stary_vyraz = /vyraz[PROMENNA]/;


Jak mám vložit místo nuly proměnnou, zkoušel jsem '+promenna+', "+promenna+", /+promenna+/, atd, jenže javascript bere promennou jako text ???

Díky za jakoukoliv radu.
Dero
Profil
Zkus tohle:

var reg = new RegExp("vyraz["+promenna+"]", "g");
H13
Profil
No to je prave to, tohle taky nefunguje, vypise to starý výraz místo nového:

var promenna = 0;
var retezec = "Nejaka veta s timto vyrazem: vyraz[0]";
//var stary_vyraz = /vyraz[0]/;
var stary_vyraz = new RegExp("vyraz["+promenna+"]", "g");
var novy_vyraz = "vyraz";
retezec = retezec.replace(stary_vyraz, novy_vyraz);
alert(retezec);


Místo:
Nejaka veta s timto vyrazem: vyraz
vypíše:
Nejaka veta s timto vyrazem: vyraz[0]
Toto téma je uzamčeno. Odpověď nelze zaslat.