02. december 2004 - 17:21
Der er
7 kommentarer og
1 løsning
erstatte tekst i variable
Hej eksperter!
Jeg har nada forstand på dette område, men jeg har brug for noget javascript der kan gøre tekst skrevet i et textarea både "uHTML"- og "HTML"-agtig!
Skal bruges så man i realtime kan se hvad man skriver i en tekstbox! (der kan kun skrives plantekst i textareaen)
Jeg overføre så ved hver tastetryk indholdet til en div som på den måde viser det, men fx hvis det skal være "uHTML"-agtig kommer der ingen linieskift (grundet \n bruges i formen, og <br> i div'en)
< og > skal også gerne laves så de skrives som tekst og ikke begynder som HTML...
hvordan replacer jeg tekst i en variable?
02. december 2004 - 18:29
#1
function replaceText(txt,foer,efter){
var reg = new RegExp(foer,"gi");
return txt.replace(reg,efter);
}
02. december 2004 - 23:57
#3
Jo, det kan jeg da godt:
Jeg går ud fra at du umiddelbart kan se, hvad parametrene i funktionen repræsenterer, altså den tekst, du skal have udskiftet noget i, det, som skal udskiftes, og det, det skal udskiftes til ...
Første linje opretter en regular expression, som er beregnet til at finde enhver udgave (g i "gi" !-) af før-teksten -- og uanset case, altså så Tom og tom findes (i'et)
Når man benytter en regexp til en replace, kan man udskifte alle forekomster af en tekst, hvorfor anden linje bare gør det og returnerer resultatet !o]
-- derfor vil en kode, du gør det i, typisk se således ud:
txt = "Den røde ræv lå på lur i hækken";
txt = replaceText(txt,"æ","ae");
txt = replaceText(txt,"ø","oe");
txt = replaceText(txt,"å","aa");
alert(txt);
02. december 2004 - 23:59
#4
-- en ekstra kommentar skal til, for nogle tegn har special-betydning i regExps, så de skal escapes, og i en tekststreng bliver det dobbelt-escaping:
'øer. Karl' skal altså være: 'øer\\. Karl', måske endda 'øer\\\\. Karl' hvis de er variabler !-)