Autor | Zpráva | ||
---|---|---|---|
sewerman Profil * |
#1 · Zasláno: 12. 8. 2011, 12:15:06
Potřeboval bych poradit:
Mám formulář z kterého načítám text (vstup). Potřebuji konkrétní znak (zadaný ve formuláři - formular1.tecka.value) Nevím jak mám upravit funkci replace aby brala a jako řetězec var vstup = formular1.vstup.value; var a ; a = formular1.tecka.value; vstup = vstup.replace(/a/g, x); Díky |
||
_es Profil |
#2 · Zasláno: 12. 8. 2011, 12:44:29 · Upravil/a: _es
sewerman:
„aby brala a jako řetězec“ RegExp(a,"g") Myslíš toto? |
||
sewerman Profil * |
#3 · Zasláno: 12. 8. 2011, 12:56:11
Jestkli to dobře chápu tak to bude
vstup = vstup.replace(RegExp(a,"g"), x); pokud je to správně tak to je to co jsem měl na mysli. |
||
sewerman Profil * |
#4 · Zasláno: 12. 8. 2011, 13:17:44
Takhle mě to nefungeje :-(
|
||
_es Profil |
#5 · Zasláno: 12. 8. 2011, 13:18:39 · Upravil/a: _es
sewerman:
Ešte záleží na tom, či nebude zadaný nejaký špeciálny znak, ak treba ošetriť aj to, tak sa niečo také tu už riešilo. „mě to nefungeje“ No a v premennej(?) x máš čo? |
||
sewerman Profil * |
#6 · Zasláno: 12. 8. 2011, 13:41:05
x není proměná to je první problém to jsem vyřešil "x"
Speciální znak bude s největší pravděpodobností zadán (tečka). a = RegExp(formular1.tecka.value,"g"); vstup = vstup.replace(a, "x"); Kód jsem upravil a již je funkční pokud se neobjeví právě ten speciální znak (trečka). Potom skript přestane fungovat. Jak to nejlépe ošetřit? Nějakou funkcí na přechod na ASCII? |
||
sewerman Profil * |
#7 · Zasláno: 12. 8. 2011, 14:15:27
Již jsem pochopil
a = formular1.tecka.value.replace(/[.*+?^${}()|[\]\/\\]/g, '\\$&'); a = RegExp(a,"g"); vstup = vstup.replace(a, "x"); Díky za pomoc. Funguje jak má. |
||
_es Profil |
#8 · Zasláno: 12. 8. 2011, 14:52:40
sewerman:
„x není proměná to je první problém to jsem vyřešil "x"“ Síce sa ti v tom podarilo zorientovať a úspešne vyriešiť, no zvládnutie základov programovacieho jazyka by malo byť prvé. |
||
Časová prodleva: 13 let
|
0